<!DOCTYPE html>
<html lang="en" dir="ltr" class="client-nojs">
<head>
<title>A list of open source C++ libraries - cppreference.com</title>
<meta charset="UTF-8">
<meta name="generator" content="MediaWiki 1.21.2">
<link rel="shortcut icon" href="../../../common/favicon.ico">
<link rel="stylesheet" href="../../../common/ext.css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" href="../../../common/site_modules.css">
<style>a:lang(ar),a:lang(ckb),a:lang(fa),a:lang(kk-arab),a:lang(mzn),a:lang(ps),a:lang(ur){text-decoration:none}#toc{display:none}.editsection{display:none}
/* cache key: mwiki1-mwiki_en_:resourceloader:filter:minify-css:7:472787eddcf4605d11de8c7ef047234f */</style>

<script src="../../../common/startup_scripts.js"></script>
<script>if(window.mw){
mw.config.set({"wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"cpp/links/libs","wgTitle":"cpp/links/libs","wgCurRevisionId":141606,"wgArticleId":8399,"wgIsArticle":true,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":[],"wgBreakFrames":false,"wgPageContentLanguage":"en","wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy","wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgMonthNamesShort":["","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"wgRelevantPageName":"cpp/links/libs","wgRestrictionEdit":[],"wgRestrictionMove":[]});
}</script><script>if(window.mw){
mw.loader.implement("user.options",function(){mw.user.options.set({"ccmeonemails":0,"cols":80,"date":"default","diffonly":0,"disablemail":0,"disablesuggest":0,"editfont":"default","editondblclick":0,"editsection":0,"editsectiononrightclick":0,"enotifminoredits":0,"enotifrevealaddr":0,"enotifusertalkpages":1,"enotifwatchlistpages":0,"extendwatchlist":0,"externaldiff":0,"externaleditor":0,"fancysig":0,"forceeditsummary":0,"gender":"unknown","hideminor":0,"hidepatrolled":0,"imagesize":2,"justify":0,"math":1,"minordefault":0,"newpageshidepatrolled":0,"nocache":0,"noconvertlink":0,"norollbackdiff":0,"numberheadings":0,"previewonfirst":0,"previewontop":1,"quickbar":5,"rcdays":7,"rclimit":50,"rememberpassword":0,"rows":25,"searchlimit":20,"showhiddencats":0,"showjumplinks":1,"shownumberswatching":1,"showtoc":0,"showtoolbar":1,"skin":"cppreference2","stubthreshold":0,"thumbsize":2,"underline":2,"uselivepreview":0,"usenewrc":0,"watchcreations":0,"watchdefault":0,"watchdeletion":0,
"watchlistdays":3,"watchlisthideanons":0,"watchlisthidebots":0,"watchlisthideliu":0,"watchlisthideminor":0,"watchlisthideown":0,"watchlisthidepatrolled":0,"watchmoves":0,"wllimit":250,"variant":"en","language":"en","searchNs0":true,"searchNs1":false,"searchNs2":false,"searchNs3":false,"searchNs4":false,"searchNs5":false,"searchNs6":false,"searchNs7":false,"searchNs8":false,"searchNs9":false,"searchNs10":false,"searchNs11":false,"searchNs12":false,"searchNs13":false,"searchNs14":false,"searchNs15":false,"gadget-ColiruCompiler":1,"gadget-MathJax":1});;},{},{});mw.loader.implement("user.tokens",function(){mw.user.tokens.set({"editToken":"+\\","patrolToken":false,"watchToken":false});;},{},{});
/* cache key: mwiki1-mwiki_en_:resourceloader:filter:minify-js:7:9f05c6caceb9bb1a482b6cebd4c5a330 */
}</script>
<script>if(window.mw){
mw.loader.load(["mediawiki.page.startup","mediawiki.legacy.wikibits","mediawiki.legacy.ajax"]);
}</script>
<!--[if lt IE 7]><style type="text/css">body{behavior:url("/mwiki/skins/cppreference2/csshover.min.htc")}</style><![endif]--></head>
<body class="mediawiki ltr sitedir-ltr ns-0 ns-subject page-cpp_links_libs skin-cppreference2 action-view">
        <!-- header -->
        <!-- /header -->
        <!-- content -->
<div id="cpp-content-base">
            <div id="content">
                <a id="top"></a>
                <div id="mw-js-message" style="display:none;"></div>
                                <!-- firstHeading -->
<h1 id="firstHeading" class="firstHeading">A list of open source C++ libraries</h1>
                <!-- /firstHeading -->
                <!-- bodyContent -->
                <div id="bodyContent">
                                        <!-- tagline -->
                    <div id="siteSub">From cppreference.com</div>
                    <!-- /tagline -->
                                        <!-- subtitle -->
                    <div id="contentSub"><span class="subpages">&lt; <a href="../../cpp.html" title="cpp">cpp</a>‎ | <a href="../links.html" title="cpp/links">links</a></span></div>
                    <!-- /subtitle -->
                                                            <!-- bodycontent -->
                    <div id="mw-content-text" lang="en" dir="ltr" class="mw-content-ltr"><div style="border: 1px solid silver; border-radius: 5px; padding: 0.5em;">
<p>The objective of this page is to build a comprehensive list of open source C++ libraries, so that when one needs an implementation of particular functionality, one needn't to waste time searching on web (DuckDuckGo, Google, Bing etc.).
</p><p>If you know a library that might be useful to others, please add a link to it here. There are no restrictions on what can be included except that the source of the library must be readily available to download.
</p><p>The page is provided 'as is' - with the hope of being useful, but without any warranties. Outdated, misleading or wrong links might appear here. If you've noticed one of these, it would be great if you fixed the error.
</p>
</div>
<div style="margin-left:0px">
<table class="mw-collapsible mw-collapsed" style="background: transparent; text-align: left; border: 1px solid silver; margin: 0.2em auto auto; width:100%; clear: both; padding: 1px;">

<tr>
<th style="background: #F0F2F5; font-size:87%; padding:0.2em 0.3em; text-align:center;"> <span style="font-size:115%">Libraries: Table Of Contents</span>
</th></tr>
<tr>
<td style="border: solid 1px silver; padding: 8px; background: white;">
<ul><li> <a href="libs.html#Package_managers">Package managers</a>
</li></ul>
<hr>
<p>Libraries:
</p>
<ul><li> <a href="libs.html#Audio">Audio</a>
<ul><li> <a href="libs.html#Audio:CD">CD</a>
</li><li> <a href="libs.html#Audio:Fingerprinting">Fingerprinting</a>
</li><li> <a href="libs.html#Audio:Formats">Formats</a>
</li><li> <a href="libs.html#Audio:Tagging">Tagging</a>
</li></ul>
</li><li> <a href="libs.html#Benchmarking">Benchmarking</a>
</li><li> <a href="libs.html#Communication">Communication</a>
</li><li> <a href="libs.html#Concurrency">Concurrency</a>
</li><li> <a href="libs.html#Configuration">Configuration</a>
<ul><li> <a href="libs.html#Configuration:Command_Line">Command Line</a>
</li><li> <a href="libs.html#Configuration:CSS">CSS</a>
</li><li> <a href="libs.html#Configuration:HOCON">HOCON</a>
</li><li> <a href="libs.html#Configuration:JSON">JSON</a>
</li><li> <a href="libs.html#Configuration:TOML">TOML</a>
</li><li> <a href="libs.html#Configuration:XML">XML</a>
</li><li> <a href="libs.html#Configuration:YAML">YAML</a>
</li></ul>
</li><li> <a href="libs.html#Containers">Containers</a>
</li><li> <a href="libs.html#Cryptography">Cryptography</a>
</li><li> <a href="libs.html#Databases">Databases</a>
</li><li> <a href="libs.html#Embedded_languages_bindings">Embedded languages bindings</a>
</li><li> <a href="libs.html#Embedded.2FRealtime">Embedded/Realtime</a>
</li><li> <a href="libs.html#File_metadata">File metadata</a>
</li><li> <a href="libs.html#Financial_Calculations">Financial Calculations</a>
</li><li> <a href="libs.html#Game_Engine_Architecture">Game Engine Architecture</a>
</li><li> <a href="libs.html#General_Multimedia">General Multimedia</a>
</li><li> <a href="libs.html#Generic">Generic</a>
</li><li> <a href="libs.html#GPS">GPS</a>
</li><li> <a href="libs.html#Graphic_user_interface">Graphic user interface</a>
<ul><li> <a href="libs.html#Graphic_user_interface:CopperSpice">CopperSpice</a>
</li><li> <a href="libs.html#Graphic_user_interface:GTK.2B">GTK+</a>
</li><li> <a href="libs.html#Graphic_user_interface:Qt">Qt</a>
</li><li> <a href="libs.html#Graphic_user_interface:U.2B.2B">U++</a>
</li></ul>
</li><li> <a href="libs.html#Graphics">Graphics</a>
</li><li> <a href="libs.html#Graphics_.283D.29">Graphics (3D)</a>
</li><li> <a href="libs.html#Images">Images</a>
<ul><li> <a href="libs.html#Images:Formats">Formats</a>
</li><li> <a href="libs.html#Images:Plotting">Plotting</a>
</li></ul>
</li><li> <a href="libs.html#Image_Processing">Image Processing</a>
</li><li> <a href="libs.html#Internationalization">Internationalization</a>
</li><li> <a href="libs.html#Logging">Logging</a>
</li><li> <a href="libs.html#Error_handling">Error handling</a>
</li><li> <a href="libs.html#Math">Math</a>
<ul><li> <a href="libs.html#Math:Automata_theory">Automata theory</a>
</li><li> <a href="libs.html#Math:Class_Library_for_Numbers">Class Library for Numbers</a>
</li><li> <a href="libs.html#Math:Computational_geometry">Computational geometry</a>
</li><li> <a href="libs.html#Math:Graph_theory">Graph theory</a>
</li><li> <a href="libs.html#Math:Linear_algebra">Linear algebra</a>
</li><li> <a href="libs.html#Math:Machine_Learning">Machine Learning</a>
</li><li> <a href="libs.html#Math:Numeral_Calculations">Numeral Calculations</a>
</li><li> <a href="libs.html#Math:Optimization">Optimization</a>
</li></ul>
</li><li> <a href="libs.html#Metaprogramming">Metaprogramming</a>
</li><li> <a href="libs.html#PDF">PDF</a>
</li><li> <a href="libs.html#Physics_and_Simulations">Physics and Simulations</a>
</li><li> <a href="libs.html#Serialization">Serialization</a>
<ul><li> <a href="libs.html#Serialization:Binary_serialization">Binary serialization</a>
</li></ul>
</li><li> <a href="libs.html#Sorting">Sorting</a>
</li><li> <a href="libs.html#System">System</a>
</li><li> <a href="libs.html#Terminal">Terminal</a>
</li><li> <a href="libs.html#Testing">Testing</a>
</li><li> <a href="libs.html#Text">Text</a>
<ul><li> <a href="libs.html#Text:Coding">Coding</a>
</li><li> <a href="libs.html#Text:Diff.2FPatch">Diff/Patch</a>
</li><li> <a href="libs.html#Text:Format">Format</a>
</li><li> <a href="libs.html#Text:Parse">Parse</a>
</li><li> <a href="libs.html#Text:Search">Search</a>
</li><li> <a href="libs.html#Text:Template_Engine">Template Engine</a>
</li></ul>
</li><li> <a href="libs.html#Version_Control">Version Control</a>
</li><li> <a href="libs.html#Video">Video</a>
</li><li> <a href="libs.html#Web">Web</a>
</li></ul>
</td></tr></table></div>
<p><br>
</p>
<h1><span class="mw-headline" id="Package_managers">Package managers</span></h1>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="15%"> Package manager
</th>
<th rowspan="1" width="65%"> Description
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://build2.org/">build2</a>
</th>
<td> An open source (MIT), cross-platform build toolchain that aims to approximate Rust Cargo's convenience for developing and packaging C/C++ projects while providing more depth and flexibility, especially in the build system.
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://cget.readthedocs.io/en/latest/">cget</a>
</th>
<td> Cmake package retrieval. This can be used to download and install cmake packages.
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/scapix-com/cmodule">cmodule</a>
</th>
<td> Non-intrusive CMake dependency management.
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://conan.io/">conan</a>
</th>
<td> Decentralized, open-source (MIT), C/C++ package manager.
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/TheLartians/CPM.cmake">CPM.cmake</a>
</th>
<td> A CMake script that adds dependency management capabilities to CMake. It's built as a thin wrapper around CMake's FetchContent module that adds version control, caching, a simple API and more.
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://hunter.readthedocs.io/en/latest/">hunter</a>
</th>
<td> A CMake driven cross-platform package manager for C/C++ projects.
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://spack.io">spack</a>
</th>
<td> A package manager for supercomputers, Linux, and macOS. It makes installing scientific software easy. It isn’t tied to a particular language.
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://bitbucket.org/benman/teaport">teaport</a>
</th>
<td> A cocoapods inspired dependency manager.
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://docs.microsoft.com/en-us/cpp/vcpkg">vcpkg</a>
</th>
<td> A C++ package manager for Windows, Linux, and macOS.
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://xmake.io/">xmake</a>
</th>
<td> A cross-platform Lua-based C/C++ build tool and package manager.
</td></tr>
</table>
<p><br>
</p>
<h1><span class="mw-headline" id="Libraries">Libraries</span></h1>
<h2><span class="mw-headline" id="Audio">Audio</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/zsiciarz/aquila">Aquila</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Open-source and cross-platform DSP library for C++11.
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://essentia.upf.edu/index.html">Essentia</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Open-source library and tools for audio and music analysis, description and synthesis (MIR) <a rel="nofollow" class="external text" href="https://github.com/MTG/essentia">(Src)</a>
</td>
<td>  <a rel="nofollow" class="external text" href="http://www.gnu.org/licenses/agpl.html">Affero GPLv3</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.fftw.org/">FFTW</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A library for computing the DFT (SSE/SSE2/AVX/Altivec/ARM Neon). <a rel="nofollow" class="external text" href="https://github.com/FFTW/fftw3">(Src)</a>
</td>
<td>  GPL-2.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.kfrlib.com">KFR</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Fast, modern, C++17, open source, cross-platform DSP/DFT framework, supports Audio resampling, FIR/IIR filters, Biquad, (SSE, AVX, AVX-512, ARM NEON). <a rel="nofollow" class="external text" href="https://github.com/kfrlib/kfr">(Src)</a>
</td>
<td>  GPL-2.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.surina.net/soundtouch/">soundtouch</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  SoundTouch is an open-source cross-platform audio processing library for changing the Tempo, Pitch and Playback Rates of audio streams or audio files. <a rel="nofollow" class="external text" href="https://gitlab.com/soundtouch/soundtouch">(Src)</a>
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html">LGPL-2.1</a>
</td>
<td>  Makefile
</td></tr>
</table>
<p><span id="Audio:CD"></span>
</p>
<dl><dt> CD
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/KDE/libkcompactdisc">libkcompactdisc</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Library for interfacing with CDs
</td>
<td>  GPL v2.0
</td>
<td>  CMake
</td></tr>
</table>
<p><span id="Audio:Fingerprinting"></span>
</p>
<dl><dt> Fingerprinting
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://acoustid.org/chromaprint">chromaprint</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Chromaprint is an audio fingerprint library designed to identify near-identical audio. It trades precision and robustness for search performance. Chromaprint can use multiple FFT libraries - FFmpeg, FFTW3, KissFFT or vDSP. <a rel="nofollow" class="external text" href="https://github.com/acoustid/chromaprint">(Src)</a>
</td>
<td>  MIT, LGPL 2.1
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://musicbrainz.org/doc/libmusicbrainz">libmusicbrainz</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The MusicBrainz Client Library (libmusicbrainz), also known as mb_client, is a development library geared towards developers who wish to add MusicBrainz lookup capabilities to their applications. The library supports Windows, Linux and Mac OS X <a rel="nofollow" class="external text" href="https://github.com/metabrainz/libmusicbrainz">(Src)</a>
</td>
<td>  LGPL-2.1
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/tanob/libofa/">libofa</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Open-source audio fingerprint by MusicIP
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/tanob/libofa/blob/master/COPYING">APL</a>
</td>
<td>  makefile
</td></tr>
</table>
<p><span id="Audio:Formats"></span>
</p>
<dl><dt> Formats
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://audiofile.68k.org/">audiofile</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  AudioFile Library handles reading and writing audio files in many common formats. <a rel="nofollow" class="external text" href="https://github.com/mpruett/audiofile/">(Src)</a>
</td>
<td>  LGPL-2.1
</td>
<td>  makefile
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://xiph.org/flac/">flac</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  FLAC stands for Free Lossless Audio Codec, meaning that audio is compressed in FLAC without any loss in quality. FLAC stands out as the fastest and most widely supported lossless audio codec, non-proprietary, is unencumbered by patents.
</td>
<td>  <a rel="nofollow" class="external text" href="http://opensource.org/docs/definition.php">Open Source</a>, BSD, GPL
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.mega-nerd.com/libsndfile/">libsndfile</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Libsndfile is a cross-platform, open-source library for reading and writing files containing sampled sound (such as Windows WAV and the Apple/SGI AIFF format) through one standard library interface.
</td>
<td>  LGPL v2.0 or v3.0
</td>
<td>
</td></tr>
</table>
<p><span id="Audio:Tagging"></span>
</p>
<dl><dt> Tagging
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://id3lib.sourceforge.net/">id3lib</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  An open-source, cross-platform library for reading, writing, and manipulating ID3v1 and ID3v2 tags, and retrieving some basic mp3 header info like bitrate. However, we now recommend moving to <a rel="nofollow" class="external text" href="https://taglib.org/">taglib</a> :)
</td>
<td>  LGPL v2
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://taglib.org/">taglib</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  TagLib Audio Metadata Library is a library for reading and editing the meta-data of several popular audio formats: ID3v1, ID3v2 for MP3 files, Ogg Vorbis comments and ID3 tags and Vorbis comments in FLAC, MPC, Speex, WavPack, TrueAudio, WAV, AIFF, MP4 and ASF files. <a rel="nofollow" class="external text" href="https://github.com/taglib/taglib">(Src)</a>
</td>
<td>  <a rel="nofollow" class="external text" href="http://www.gnu.org/licenses/lgpl.html">LGPL</a> and <a rel="nofollow" class="external text" href="http://www.mozilla.org/MPL/MPL-1.1.html">MPL v1.1</a>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Benchmarking">Benchmarking</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/google/benchmark">benchmark</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A library to benchmark code snippets, similar to unit tests
</td>
<td>  Apache 2.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/DigitalInBlue/Celero">Celero</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Feature-rich C++ Benchmark Authoring Library/Framework. Supports Windows, Linux, and OSX using C++11.
</td>
<td>  Apache
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/gperftools/gperftools">gperftools</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  'Google Performance Tools' includes a high-performance, multi-threaded malloc implementation plus tools for benchmarking heap allocation and CPU utilization.
</td>
<td>  BSD 3-Clause "New" or "Revised"
</td>
<td>  configure
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/mattreecebentley/plf_nanotimer">plf::nanotimer</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Lowest-overhead, cross-platform simple timer class for benchmarking.
</td>
<td>  zlib
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Communication">Communication</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.dre.vanderbilt.edu/~schmidt/ACE.html">ACE</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  asynchronous networking, event demultiplexing, messaging
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://thrift.apache.org/">Apache Thrift</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The Apache Thrift software framework, for scalable cross-language services development, combines a software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml and Delphi and other languages.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://boost.org/libs/asio/">Boost.Asio</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  asynchronous and synchronous networking, timers, serial I/O
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://boost.org/libs/beast/">Boost.Beast</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  HTTP and WebSocket library built on top of Boost.Asio
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/Organic-Code/Breep">Breep</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Event based, high-level, peer-to-peer library, allowing users to directly send and receive objects.
</td>
<td>  European Union Public License 1.1
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://brpc.apache.org">brpc</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Industrial-grade RPC framework used throughout Baidu, with 1,000,000+ instances and thousands kinds of services. (<a rel="nofollow" class="external text" href="https://github.com/apache/incubator-brpc/">Src</a>) (<a rel="nofollow" class="external text" href="https://brpc.apache.org/docs/">Doc</a>)
</td>
<td>  Apache 2.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/Microsoft/cpprestsdk">C++ REST SDK</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  asynchronous HTTP client and listener, asynchronous Stream, URI, JSON
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/cpp-netlib/cpp-netlib">cpp-netlib</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  cpp-netlib: The C++ Network Library
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/whoshuu/cpr">cpr</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  a modern C++ HTTP requests library
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/CrowCpp/crow">Crow</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A header-only C++ micro web framework (inspired by Python Flask)
</td>
<td>  BSD-3-Clause
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.curlpp.org/">curlpp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++ wrapper for CURL library
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/pdumais/DumaisLib">DumaisLib</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Various utilities such as WebServer, JSON, WebSocket server, REST framework (a library for creating a REST API in your c++ app)
</td>
<td>  MIT
</td>
<td>  Makefile
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/sony/easyhttpcpp">EasyHttp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A cross-platform HTTP client library with a focus on usability and speed, supporting http response caching and more.
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/continental/ecal">eCAL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  high performance inter-process communication
</td>
<td>  Apache 2.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/continental/fineftp-server">fineftp-server</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  ftp server library for windows and unix
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://grpc.io/">gRPC</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A modern open-source high performance RPC framework that can run in any environment.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://gsoap2.sourceforge.net/">gsoap</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C/C++ development toolkit for XML data bindings, fast WSDL/SOAP/XML Web services, WS-Security, JSON/XML-RPC RESTful services
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/hmbdc-dev/hmbdc">hmbdc</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Headers-only, lightweight and high performance C++17 message pub/sub middleware framework/lib
</td>
<td>
</td>
<td> Headers-only
</td></tr>

<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/daedric/httpp">HTTPP</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Simple, production ready HTTP server built on top of Boost and a client built on top of libcurl.
</td>
<td>  BSD 2-Clause "Simplified"
</td>
<td>  CMake, Makefile
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/machinezone/IXWebSocket">IXWebSocket</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Open-source WebSocket + HTTP library without dependency, supports SSL and the per message deflate WebSocket extension.
</td>
<td>  BSD 3-Clause "New" or "Revised"
</td>
<td>  CMake, Makefile
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/skywind3000/kcp/blob/master/README.en.md">KCP</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A fast and reliable ARQ protocol that helps applications to reduce network latency.
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/tghosgor/libashttp">libashttp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  asynchronous HTTP client library
</td>
<td>  GNU Lesser General Public v3.0
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/cinemast/libjson-rpc-cpp">libjson-rpc-cpp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
<p>This framework provides cross platform JSON-RPC (remote procedure call) support for C++. It is fully JSON-RPC 2.0 &amp; 1.0 compatible. 
</p>
</td>
<td>  MIT
</td>
<td>  CMake, Conan
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/titi38/libnavajo">libnavajo</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++ framework including a fast multithreaded http server, HTML5 Websockets, SSL, X509 and HTTP authentification, compression, cookies and advanced session management, IPv4 and IPv6 (CeCILL-C).
</td>
<td>  CeCILL-C FREE SOFTWARE LICENSE AGREEMENT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://libtins.github.io/">libtins</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Network packet crafting and sniffing library
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://nanomsg.org/">nanomsg</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  fast message queue, zeromq successor
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/gmlc-tdc/netif">netif</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Header-only C++14 library for getting network addresses on Windows, Linux, macOS, and FreeBSD.
</td>
<td>  BSD 3-Clause "New" or "Revised"
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/nghttp2/nghttp2">nghttp2</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  HTTP/2 C Library and tools (server, client, proxy and benchmarking tools)
</td>
<td>  MIT
</td>
<td>  CMake, configure
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/loentar/ngrest">ngrest</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Fast and easy in use JSON RESTful Web Services Framework
</td>
<td>  Apache 2.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://nng.nanomsg.org/">nng</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  fast message queue, nanomsg successor
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://omniorb.sourceforge.net">omniORB</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  the fastest, complete and portable CORBA ORB implementation in C++
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.opendds.org">OpenDDS</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  DDS (Data Distribution Service) implementation
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/eclipse/paho.mqtt.cpp/">Paho MQTT</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Modern C++ client for MQTT from Eclipse
</td>
<td>
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://seladb.github.io/PcapPlusPlus-Doc/">PcapPlusPlus</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Multiplatform C++ network sniffing and packet parsing and crafting framework
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://pocoproject.org/">POCO</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  networking: encryption, HTTP; Zip files
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/topcpporg/rest_rpc">rest_rpc</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  modern, simple, easy to use rpc framework
</td>
<td>
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/corvusoft/restbed">restbed</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Restbed framework brings asynchronous RESTful functionality to C++11 applications.
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/Corvusoft/restbed/blob/master/LICENSE">License</a>
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/jgaa/restc-cpp">restc-cpp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Takes the pain out of accessing JSON API's from C++. HTTP Client, native C++ class to/from JSON serialization, asynchronous IO trough boost::asio coroutines. C++14.
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/logandk/restful_mapper">restful_mapper</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  ORM for consuming RESTful JSON APIs in C++
</td>
<td>
</td>
<td>  CMake, Makefile
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/scylladb/seastar">seastar</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  High performance server-side application framework, based on C++14/C++17.
</td>
<td>  Apache 2.0
</td>
<td>  CMake, etc.
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://siliconframework.org">Silicon</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The Silicon C++14 Web Framework: Fast and Robust Web APIs
</td>
<td>  MIT
</td>
<td> CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/fpagliughi/sockpp">sockpp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A simple, modern C++ socket library
</td>
<td>  BSD 3-Clause "New" or "Revised"
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/TinkoffCreditSystems/stream-client">stream-client</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Lightweight, header-only, Boost-based client-side socket/connector/socket pool/resolver
</td>
<td>  Apache 2.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/Cylix/tacopie/">tacopie</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++11 TCP Library
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.dre.vanderbilt.edu/~schmidt/TAO.html">TAO</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  CORBA
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.taox11.org">taox11</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++11 based CORBA implementation
</td>
<td>  MIT
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://libunicomm.org">Unicomm</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  asynchronous networking, high-level TCP communication framework
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/skypjack/uvw">uvw</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  libuv wrapper in modern C++
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/hack-tramp/wnetwrap">WNetWrap</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  WinInet wrapper in C++
</td>
<td>  MIT
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/apenwarr/wvstreams">wvstreams</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++ networking library including UniConf and a convenient D-Bus API
</td>
<td>  GPL
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://zeromq.org/">zeromq</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  fast message queue
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Concurrency">Concurrency</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/CodeExMachina/BlockingCollection">BlockingCollection</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A C++11 thread safe collection class modeled after .NET BlockingCollection.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/doc/html/atomic.html">Boost.Atomic</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  provides atomic data types and operations on these data types, as well as memory ordering constraints required for coordinating multiple threads through atomic variables.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/kylelutz/compute">Boost.Compute</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  (unofficial) GPU/parallel-computing library for C++ based on OpenCL.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/context/doc/html/index.html">Boost.Context</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A C++11 library that provides a cooperative multitasking abstraction on a single thread.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/doc/html/interprocess.html">Boost.Interprocess</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  simplifies the use of interprocess communication and synchronization mechanisms and offers a wide range of them: shared memory, memory-mapped files, semaphores, mutexes, condition variables and upgradable mutex types, named versions of the synchronization objects, file locking, message queues.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/doc/html/lockfree.html">Boost.Lockfree</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  provides non-blocking (aka lock-free) concurrent data structures: a queue, a stack, and a ringbuffer (spsc_queue).
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/doc/html/mpi.html">Boost.MPI</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A C++-friendly interface to the standard <a rel="nofollow" class="external text" href="https://www.mpi-forum.org/">Message Passing Interface</a>
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/doc/html/thread.html">Boost.Thread</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  enables the use of multiple threads of execution with shared data and means for synchronizing data between the threads.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/David-Haim/concurrencpp">concurrencpp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Modern concurrency for C++. Tasks, executors, timers and C++20 coroutines.
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/illuhad/hipSYCL">hipSYCL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  provides a clang-based toolchain and a runtime SYCL implementation that can run on multiple target devices (NVIDIA/AMD GPU’s, CPU’s)
</td>
<td>  BSD-2-Clause
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/STEllAR-GROUP/hpx/">HPX</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A general purpose C++ runtime system for parallel and distributed applications of any scale
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://software.intel.com/content/www/us/en/develop/tools/threading-building-blocks.html">Intel TBB</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Intel® TBB is a cross-platform C++ library for shared memory parallel programming and heterogeneous computing. The library provides: generic parallel algorithms, concurrent containers, a scalable memory allocator, work-stealing task scheduler, and low-level synchronization primitives. <a rel="nofollow" class="external text" href="https://github.com/oneapi-src/oneTBB">(Src)</a> <a rel="nofollow" class="external text" href="https://software.intel.com/content/www/us/en/develop/tools/threading-building-blocks/documentation.html">(Doc)</a>
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/oneapi-src/oneTBB/blob/tbb_2020/LICENSE">Apache-2.0</a> or Commercial
</td>
<td>  CMake, Makefile
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/kokkos/kokkos">KOKKOS</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A programming model in C++ for writing performance portable HPC applications
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.open-mpi.org/">libopenmpi</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The Open MPI Project is an open source Message Passing Interface implementation
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.open-mpi.org/community/license.php">3-clause BSD </a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/p12tic/libsimdpp">libsimdpp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A portable header-only zero-overhead C++ low level SIMD library.
</td>
<td>  Boost
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/rabauke/mpl">MPL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A C++-17-friendly header-only interface to the standard <a rel="nofollow" class="external text" href="https://www.mpi-forum.org/">Message Passing Interface</a>
</td>
<td>  BSD 3-Clause "New" or "Revised"
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/oleh-derevenko/mutexgear">MutexGear</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Mutex-only synchronization (wheel, rwlock, work queues)
</td>
<td>  The MutexGear Library
</td>
<td>  configure, MSVC
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.openmp.org/specifications/">OpenMP</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The OpenMP API specification for parallel programming
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://raftlib.io">RaftLib</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++17 stream-like concurrent actors that enable parallel data-flow computations
</td>
<td>  Apache-2.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://sourceforge.net/projects/sobjectizer/">SObjectizer</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A small framework for simplification of development of concurrent and event-driven applications in C++ by using actor and publish-subscribe models.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/benman64/subprocess">subprocess</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++17/20 cross platform library for running subprocesses
</td>
<td>  MIT
</td>
<td>  CMake, Teaport
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/taskflow/taskflow">Taskflow</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Parallel Task Programming in Modern C++
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/taskflow/taskflow/blob/master/LICENSE">TASKFLOW MIT</a>
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://thrust.github.io/">Thrust</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  STL-like parallel algorithms and data-structures on top of CUDA, TBB, or OpenMP
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/NVIDIA/thrust#licensing">Apache v2.0, Boost v1.0.</a>
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/ddemidov/vexcl">VexCL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++ vector expression template library for OpenCL, CUDA, OpenMP
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://viennacl.sourceforge.net/">ViennaCL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Linear algebra and algorithms with OpenMP, CUDA, and OpenCL backends
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/mpoeter/xenium">Xenium</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A header-only C++17 library that provides various concurrent data structures and reclamation schemes.
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
</table>
<h2><span class="mw-headline" id="Configuration">Configuration</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/doc/html/program_options.html">Boost.Program_options</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The library allows to obtain program options, that is (name, value) pairs from the user, via conventional methods such as command line, config file, and environment variables.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.gtkmm.org/">gconfmm</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.hyperrealm.com/libconfig/">libconfig</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://madmurphy.github.io/libconfini/">libconfini</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  INI parser
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/TinkoffCreditSystems/uconfig">uconfig</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Lightweight, header-only, C++17 configuration library
</td>
<td>  Apache 2.0
</td>
<td>  CMake
</td></tr>
</table>
<p><span id="Configuration:Command_Line"></span>
</p>
<dl><dt> Command Line
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/doc/html/program_options.html">Boost.Program_options</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The library allows to obtain program options, that is (name, value) pairs from the user, via conventional methods such as command line, config file, and environment variables.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/CLIUtils/CLI11">CLI11</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A header-only command line parser for C++11 and beyond that provides a rich feature set with a simple and intuitive interface.
</td>
<td>  BSD-3-Clause
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/jarro2783/cxxopts">cxxopts</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A lightweight header-only C++11 (or C++17) command-line arguments parser, supporting the standard GNU style syntax for options.
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://gflags.github.io/gflags/">gflags</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Library that implements commandline flags processing. It includes built-in support for standard types such as string and the ability to define flags in the source file in which they are used.
</td>
<td>  BSD
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/hbristow/argparse">hbristow/argparse</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A slimline C++ class for parsing command-line arguments, with an interface similar to python's class of the same name.
</td>
<td>  BSD
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/morrisfranken/argparse">morrisfranken/argparse</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A lightweight header-only library for parsing command line arguments in an elegant manner.
</td>
<td>  Apache 2
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/p-ranav/argparse">p-ranav/argparse</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Single header argument Parser for C++17
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://sourceforge.net/projects/tclap/">tclap</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A simple templatized C++ library for parsing command line arguments. The library provides a simple, flexible object-oriented interface.
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>

</table>
<p><span id="Configuration:CSS"></span>
</p>
<dl><dt> CSS
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/lexborisov/mycss">mycss</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  CSS Parser
</td>
<td>
</td>
<td>
</td></tr>
</table>
<p><span id="Configuration:HOCON"></span>
</p>
<dl><dt> HOCON
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/puppetlabs/cpp-hocon/tree/master/lib/src">cpp-hocon</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The C++ implementation of the HOCON format developed by Pupplet.
</td>
<td>
</td>
<td>
</td></tr>
</table>
<p><span id="Configuration:JSON"></span>
</p>
<dl><dt> JSON
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/bblanchon/ArduinoJson">ArduinoJson</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  ArduinoJson
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/json/doc/html/index.html">Boost.JSON</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  JSON parsing, serialization, and DOM in C++11/17
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://cajun-jsonapi.sourceforge.net/">CAJUN</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/beached/daw_json_link">DAW JSON Link</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++17 static C++ bindings with type checking allowing of parsing directly to user data structures without library allocation, push/pull modes, allocator support, constexpr
</td>
<td>  BSL 1.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.digip.org/jansson/">jansson</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Jansson is C library for encoding, decoding and manipulating JSON data.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/jeaye/jeayeson">jeayeson</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A very sane (header only) C++14 JSON library
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/castedo/jios">jios</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  JSON Input Output Streams
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://ddsbench.svn.sourceforge.net/viewvc/ddsbench/trunk/jost/">JOST</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/nlohmann/json">json</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Niels Lohmann JSON
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://tgockel.github.io/json-voorhees/">JSON Voorhees</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Killer JSON for C++
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://bitbucket.org/tunnuz/json">JSON++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/ascheglov/json-cpp">json-cpp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/dropbox/json11">json11</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  json11 is a tiny JSON library for C++11, providing JSON parsing and serialization.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/anhero/JsonBox">JsonBox</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/danielaparker/jsoncons/">jsoncons</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A header-only library for JSON and JSON-like data formats, with JSON Pointer, JSON Patch, JSONPath, CSV, MessagePack, CBOR, BSON, UBJSON.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/open-source-parsers/jsoncpp">jsoncpp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>  MIT
</td>
<td>  CMake, Conan, vcpkg
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/pibara/jsonme--">jsonme--</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://sourceforge.net/projects/libjson/">libjson</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://giacomodrago.github.io/minijson/">minijson</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++ DOM-less and allocation-free JSON parsing and serialization
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://fossil.wanderinghorse.net/repos/nosjob/index.cgi/index">nosjob</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://qjson.sourceforge.net/">qjson</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/miloyip/rapidjson">rapidjson</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/simdjson/simdjson">simdjson</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Parsing gigabytes of JSON per second taking advantage of modern micro-architectures and parallelizing with SIMD (<a rel="nofollow" class="external text" href="https://arxiv.org/abs/1902.08318">Doc</a>) (<a rel="nofollow" class="external text" href="https://youtu.be/wlvKAT7SZIQ">Kino</a>)
</td>
<td>  Apache-2.0
</td>
<td>  CMake, vcpkg
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/bk192077/struct_mapping">struct_mapping</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Mapping json to and from a c++ structure
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/Loki-Astari/ThorsSerializer">ThorsSerializer</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  JSON/BSON/YAML Input Output Streams
</td>
<td>  MIT
</td>
<td>  Makefile
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://bitbucket.org/awangk/ujson">ujson</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  µjson is a small, C++11, UTF-8, JSON library
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.zoolib.org/doc/">zoolib</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
</table>
<p><span id="Configuration:TOML"></span>
</p>
<dl><dt> TOML
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://marzer.github.io/tomlplusplus/">toml++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  TOML parser and serializer for C++17 and later
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/ToruNiina/toml11">toml11</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  TOML parsing library based on C++11
</td>
<td>
</td>
<td>
</td></tr>
</table>
<p><span id="Configuration:XML"></span>
</p>
<dl><dt> XML
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/CarloWood/ai-xml">ai-xml</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Serialize objects to <em>and</em> from XML by adding a single, minimal, function to a class. Uses libxml++ under the hood.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/simulton/gpds">GPDS</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  General purpose data serializer to serialize objects to and from XML. Uses TinyXML under the hood.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://gsoap2.sourceforge.net">gSOAP</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  XML data bindings
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://libxmlplusplus.sourceforge.net/">libxml++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://pugixml.org/">pugixml</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Light-weight, simple and fast XML parser for C++ with XPath support
</td>
<td>  MIT
</td>
<td>  CMake, Conan
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.grinninglizard.com/tinyxml/">tinyxml</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/leethomason/tinyxml2/">tinyxml2</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Another and work in progress of TinyXML.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://xerces.apache.org/xerces-c/">Xerces</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
</table>
<p><span id="Configuration:YAML"></span>
</p>
<dl><dt> YAML
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/jbeder/yaml-cpp">yaml-cpp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Containers">Containers</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/bimap/">Boost.Bimap</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  a bidirectional maps library that offers associative containers such as <code>bimap&lt;X,Y&gt;</code> in which both <code>X</code> and <code>Y</code> can be used as a key.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/container/">Boost.Container</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  a header-only library that implements several well-known containers, including STL-like containers, as well as recursive containers, and new useful containers: <code>flat_map</code>, <code>flat_set</code>, <code>flat_multimap</code>, <code>flat_multiset</code>, <code>stable_vector</code>, <code>static_vector</code>, <code>small_vector</code>, <code>devector</code>.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/fusion/">Boost.Fusion</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  a library for working with heterogeneous collections of <i>tuples</i>. Provides a set of containers (<code>vector</code>, <code>list</code>, <code>set</code> and <code>map</code>), along with transformed presentation of their underlying data, a.k.a <i>views</i>."
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/heap/">Boost.Heap</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  an implementation of <i>priority queues</i> with more functionality and different performance characteristics, than STL has.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/ptr_container/">Boost.Pointer Container</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  provides containers for holding <i>heap-allocated objects</i> in an exception-safe manner and with minimal overhead.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/tuple/">Boost.Tuple</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  implements pre-C++11 n-<code>tuple</code> (a fixed size collection of elements)
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/variant/">Boost.Variant</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  implements pre-C++17 <code>variant</code> (a safe, generic, stack-based discriminated <code>union</code> container)
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/diegocaro/cpp-btree/">cpp-btree</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  header-only; B-tree containers make better use of the CPU cache: <code>btree_map</code>, <code>btree_set</code>, <code>btree_multimap</code>, <code>btree_multiset</code>. <a rel="nofollow" class="external text" href="https://code.google.com/archive/p/cpp-btree/source/default/source">(Src)</a>
</td>
<td>  <a rel="nofollow" class="external text" href="http://www.apache.org/licenses/LICENSE-2.0">Apache-2.0</a>
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/hosseinmoein/DataFrame">DataFrame</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++ DataFrame for statistical, Financial, and ML analysis -- in modern C++ using native types and continuous memory storage
</td>
<td>  BSD-3-Clause
</td>
<td>  CMake, Makefile, Conan, vcpkg
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/eggs-cpp/variant">eggs::variant</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Eggs.Variant is a C++11/14/17 generic, type-safe, discriminated union. It is notable in particular for having very good <span class="t-lc">constexpr</span> support.
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/eggs-cpp/variant/blob/master/LICENSE.txt">BSL-1.0</a>
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/serge-sans-paille">Frozen</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  <span class="t-lc">constexpr</span> perfect-hashing-based frozen sets and maps
</td>
<td>  <a rel="nofollow" class="external text" href="http://www.apache.org/licenses/LICENSE-2.0">Apache-2.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/arximboldi/immer">Immer</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A library of persistent and immutable data structures
</td>
<td>  Boost
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.plflib.org/colony.htm">plf::colony</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Unordered "bag-like" container which outperforms <code>std::</code> containers in high-modification scenarios while maintaining valid pointers to non-erased elements regardless of insertion and erasure. C++98/11/14/etc-compatible. <a rel="nofollow" class="external text" href="https://github.com/mattreecebentley/plf_colony">(Src)</a>
</td>
<td>  <a rel="nofollow" class="external text" href="https://en.wikipedia.org/wiki/Zlib_License">zlib </a>
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/alaingalvan/conan-plf-colony">conan</a> <a rel="nofollow" class="external text" href="https://cppget.org/plf-colony">build2</a>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.plflib.org/list.htm">plf::list</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  <span class="t-lc"><a href="../container/list.html" title="cpp/container/list">std::list</a></span> implementation which sacrifices range-splicing for cache-friendliness, yielding faster insertion, erasure and iteration. C++98/11/14/etc-compatible. <a rel="nofollow" class="external text" href="https://github.com/mattreecebentley/plf_list">(Src)</a>
</td>
<td>  <a rel="nofollow" class="external text" href="https://en.wikipedia.org/wiki/Zlib_License">zlib </a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.plflib.org/queue.htm">plf::queue</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Drop-in replacement container for the <span class="t-lc"><a href="../container/queue.html" title="cpp/container/queue">std::queue</a></span> container adaptor with better performance than <span class="t-lc"><a href="../container/deque.html" title="cpp/container/deque">std::deque</a></span> and <span class="t-lc"><a href="../container/list.html" title="cpp/container/list">std::list</a></span> in a queue context. C++98/11/14/etc-compatible. <a rel="nofollow" class="external text" href="https://github.com/mattreecebentley/plf_queue">(Src)</a>
</td>
<td>  <a rel="nofollow" class="external text" href="https://en.wikipedia.org/wiki/Zlib_License">zlib </a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.plflib.org/stack.htm">plf::stack</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Drop-in replacement container for the <span class="t-lc"><a href="../container/stack.html" title="cpp/container/stack">std::stack</a></span> container adaptor with better performance than <span class="t-lc"><a href="../container/vector.html" title="cpp/container/vector">std::vector</a></span> and <span class="t-lc"><a href="../container/deque.html" title="cpp/container/deque">std::deque</a></span> in a stack context. C++98/11/14/etc-compatible. <a rel="nofollow" class="external text" href="https://github.com/mattreecebentley/plf_stack">(Src)</a>
</td>
<td>  <a rel="nofollow" class="external text" href="https://en.wikipedia.org/wiki/Zlib_License">zlib </a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/martinmoene/ring-span-lite">ring_span</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A header-only lite implementation of Arthur O'Dwyer's <code>ring_span</code>, a.k.a. circular buffer view. C++98- compatible.
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/martinmoene/ring-span-lite/blob/master/LICENSE.txt">BSL-1.0</a>
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/cbeck88/strict-variant">strict_variant</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A realtime/embedded-friendly (i.e. <code>-fno-exceptions</code>/<code>-fno-rtti</code> compatible), never-empty <code>variant</code> targetting C++11. Fast, prevents many undesirable implicit conversions.
</td>
<td>  BSL-1.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/tinloaf/ygg">Ygg</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  An intrusive C++11 implementation of high-performance containers and data structures such as a <a href="https://en.wikipedia.org/wiki/Red%E2%80%93black_tree" class="extiw" title="enwiki:Red–black tree">Red-Black-Tree</a>, an <a href="https://en.wikipedia.org/wiki/Interval_tree" class="extiw" title="enwiki:Interval tree">Interval Tree</a> and an Interval Map.
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
</table>
<h2><span class="mw-headline" id="Cryptography">Cryptography</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://botan.randombit.net/">Botan</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.cryptopp.com/">crypto++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.gnutls.org/">gnutls</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.openssl.org/">openssl</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/libtom/libtomcrypt">TomCrypt</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Databases">Databases</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/Cylix/cpp_redis/">cpp-redis</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++11 Lightweight Redis client: async, thread-safe, no dependency, pipelining, multi-platform.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://dtemplatelib.sourceforge.net/">DTL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/kramolnic/EasyQtSql">EasyQtSql</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A lightweight header-only C++11 library for quick and easy SQL querying with QtSql
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://galeracluster.com/downloads/">Galera</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The Galera Cluster is the synchronous multi-master replication library (Galera) and a Write Set Replication (WSREP) API for MySQL/MariaDB (<a rel="nofollow" class="external text" href="https://github.com/codership/galera">Src</a>)
</td>
<td>  GPLv2
</td>
<td>  CMake, Scons
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/google/leveldb">LevelDB</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A C++ library developed by Google that handles billion-scale Key-Value data persistence storage.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://pqxx.org/development/libpqxx/">libpqxx</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/bendiken/lmdbxx">lmdb++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++11 wrapper for the LMDB embedded B+ tree database library.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/mongodb/mongo-cxx-driver/tree/master">mongocxx</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++11 driver library for MongoDB
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://dev.mysql.com/">mysql++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/nanodbc/nanodbc">nanodbc</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A small, cross-platform, C++14 wrapper for the native C ODBC API
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.codesynthesis.com/products/odb/">ODB</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  ODB is an open-source, cross-platform, and cross-database object-relational mapping (ORM) system for C++. ODB supports MySQL, SQLite, PostgreSQL, Oracle, and Microsoft SQL Server relational databases as well as C++98/03 and C++11 language standards.
</td>
<td>  GPL2 and/or NCUEL
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://otl.sourceforge.net/">OTL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/dmitigr/pgfe/">Pgfe</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The PostgreSQL client (FrontEnd) API in modern C++
</td>
<td>  Zlib
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/znone/qtl">QTL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A friendly and lightweight C++ database library for MySQL, SQLite and ODBC.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://quince-lib.com/">QUINCE</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  QUeries IN C++ Expressions (ORM+EDSL)
</td>
<td>  Boost
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.qxorm.com/">QxOrm</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Object Relational Mapping (ORM) database library for C++/Qt, supports most common databases, serialization (JSON, binary, XML); standalone multi-threaded HTTP web server
</td>
<td>  GPLv3 or Proprietary
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/tdv/redis-cpp/">redis-cpp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++17 Lightweight C++ client header-only library for executing Redis commands.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/sewenew/redis-plus-plus">redis-plus-plus</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A Redis client written in C++ 11, and supports Redis Sentinel, Redis Cluster, pipeline, transaction, pubsub, connection pool and STL-like interface
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://soci.sourceforge.net/">SOCI</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.sqlapi.com/">SQLAPI++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/SRombauts/SQLiteCpp">SQLiteCPP</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/rbock/sqlpp11">sqlpp11</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/taocpp/taopq">taoPQ</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Lightweight C++17 PostgreSQL client library
</td>
<td>  Boost
</td>
<td>  CMake
</td></tr>
</table>
<h2><span class="mw-headline" id="Embedded_languages_bindings">Embedded languages bindings</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://angelcode.com/angelscript/">AngelScript</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A scripting language like C++.
</td>
<td>  ZLib
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/ChaiScript/ChaiScript">ChaiScript</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  An easy to use embedded scripting language for C++.
</td>
<td>  BSD-3-Clause
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://partow.net/programming/exprtk/index.html">ExprTk</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td> A simple to use, easy to integrate and extremely efficient run-time mathematical expression parser and evaluation engine. ExprTk supports numerous forms of functional, logical and vector processing semantics and is very easily extendible.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://jamesboer.github.io/Jinx/index.htm">Jinx</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Scripting language designed for videogames.
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://spidermonkey.dev/">spidermonkey.dev</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Mozilla’s JavaScript and WebAssembly Engine.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://beltoforion.de/en/muparser/">muparser</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Many applications require the parsing of mathematical expressions. The main objective muparser is to provide a fast, easy and secure way of doing this. muparser is an extensible high performance math expression parser library written in C++.
</td>
<td>  BSD-2-Clause
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://pythonqt.sourceforge.net/">PythonQt</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Dynamic Python binding for the Qt framework. It offers an easy way to embed the Python scripting language into C++ Qt applications.
</td>
<td>  LGPL 2.1
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/Baduit/ScriptCaller">ScriptCaller</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  a header only library allowing us to call ruby scripts.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.lua.org">lua</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Lightweight multi-paradigm scripting language designed primarily for embedded use. C library.
</td>
<td>  MIT
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/ThePhD/sol2">sol2</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A modern header-only C++ library binding to Lua.
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/pmed/v8pp">v8pp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Bind C++ functions and classes into V8 JavaScript engine.
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Embedded.2FRealtime">Embedded/Realtime</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://distortos.org/">distortos</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  object-oriented C++ RTOS for microcontrollers
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.etlcpp.com">ETL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Embedded Template Library - C++03, Portable template library tailored for low resource (embedded) platforms
</td>
<td>  MIT
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://sourceforge.net/projects/qpc/files/QP_C%2B%2B/4.5.04/">QP/C++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  RTOS kernel: Real-Time Embedded Frameworks based on active objects &amp; state machines
</td>
<td>  GPLv3
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/hutorny/micurest">µcuREST</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++11 REST/JSON server framework for microcontrollers
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="File_metadata">File metadata</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://libopenraw.freedesktop.org/wiki/Exempi">exempi</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.exiv2.org">exiv2</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.kde.org/">libkexiv2</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://rarian.freedesktop.org/">rarian</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Financial_Calculations">Financial Calculations</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/hosseinmoein/DataFrame">DataFrame</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++ DataFrame for statistical, Financial, and ML analysis -- in modern C++ using native types and continuous memory storage
</td>
<td>  BSD-3-Clause
</td>
<td>  CMake, Makefile, Conan
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.quantlib.org/">QuantLib</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Quantitative finance Library - A free/open-source library for quantitative finance
</td>
<td>  modified BSD
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Game_Engine_Architecture">Game Engine Architecture</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/miguelishawt/anax">Anax</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://box2d.org/">BOX2D</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Physics engine
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/Yelnats321/EntityPlus">EntityPlus</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/alecthomas/entityx">EntityX</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/skypjack/entt">EnTT</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="General_Multimedia">General Multimedia</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/Kigs-framework/kigs">Kigs-framework</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Modular Multi-purpose Cross Platform Framework
</td>
<td>  MIT
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.openframeworks.cc/">openFrameworks</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>  MIT
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.libsdl.org/">SDL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Simple DirectMedia Layer: cross-platform, low level access to audio, keyboard, mouse, joystick, and graphics hardware via that platform's graphics API (usually OpenGL or Direct3D)
</td>
<td>  zlib
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.sfml-dev.org/index.php">SFML</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Simple and Fast Multimedia Library; multi-platform (Windows, Linux, macOS and soon Android &amp; iOS); provides a simple interface to ease the development of games and multimedia applications. It is composed of five modules: system, window, graphics (over OpenGL), audio and network.
</td>
<td>  zlib/png
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.libsigil.com/">SIGIL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Sound, Input, and Graphics Integration Library; mind-bogglingly simple, cross-platform, minimalist library for text, shapes, input, audio, and 2D images. Supported platforms: Windows, Linux and Raspberry Pi
</td>
<td>  <a rel="nofollow" class="external text" href="https://gitlab.com/geoff-nagy/sigil/-/blob/master/LICENSES.txt">License</a>
</td>
<td>  CMake
</td></tr>
</table>
<h2><span class="mw-headline" id="Generic">Generic</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://abseil.io/">Abseil</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  An open-source collection of C++ library code from Google designed to augment the C++ standard library. (<a rel="nofollow" class="external text" href="https://abseil.io/docs/">Doc</a>) (<a rel="nofollow" class="external text" href="https://github.com/abseil/abseil-cpp">Src</a>)
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/abseil/abseil-cpp/blob/master/LICENSE">Apache-2.0 </a>
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/wkaras/C-plus-plus-intrusive-container-templates">Abstract Intrusive Containers</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  More flexible than <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/doc/html/intrusive.html">Boost.Intrusive</a>, but not STL-compatible.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/bloomberg/bde">BDE</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The Bloomberg Development Environment core libraries from Bloomberg L.P.
</td>
<td>  Apache
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/aantron/better-enums">Better Enums</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Reflective enums (enum to string, iteration, etc.) with constexpr support.
</td>
<td>  BSD
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/wkaras/C-plus-plus-library-bit-fields">bitfield.h</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Bit field structure facility, more portable/flexible than the base language facility.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs">Boost</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  large collection of generic libraries
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/actor-framework/actor-framework">CAF</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The C++ Actor Framework (CAF) is an open source C++11 actor model implementation featuring lightweight &amp; fast actor implementations, pattern matching for messages, network transparent messaging, and more
</td>
<td>  BSD
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://libcinder.org/">Cinder</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A community-developed, free and open source library for professional-quality creative coding in C++. <a rel="nofollow" class="external text" href="https://libcinder.org/docs/">(Doc)</a> <a rel="nofollow" class="external text" href="https://github.com/cinder/Cinder">(Src)</a>
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/cinder/Cinder/blob/master/COPYING">Modified BSD</a>
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/daedric/commonpp">CommonPP</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Multi-purpose library with a strong emphasis on getting metrics out of a project.
</td>
<td>  BSD
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/wkaras/C-plus-plus-library-default-operators">composite_op.h</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Basic class data member introspection, cumbersome and often non-re-entrant, but sometimes useful.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/carlomilanesi/cpp-mmf/">cpp-mmf</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A C++98 library that encapsulates memory-mapped-files for POSIX or Windows
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://ryan.gulix.cl/fossil.cgi/cxxomfort/">cxxomfort</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Backports of C++ features (C++11 to C++03 and C++1y proposals to C++11/C++03).
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://dlib.net">Dlib</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  networking, threads, graphical interfaces, data structures, linear algebra, machine learning, XML and text parsing, numerical optimization, Bayesian nets, and numerous other tasks
</td>
<td>  Boost
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/wqking/eventpp">eventpp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  eventpp is a C++ event library for callbacks, event dispatcher, and event queue. With eventpp you can easily implement signal and slot mechanism, publisher and subscriber pattern, or observer pattern.
</td>
<td>  Apache 2.0
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://fcppt.org/">fcppt</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Freundlich's C++ Toolkit (fcppt) is a collection of libraries focusing on improving general C++ code by providing better types and making use of functional programming.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/facebook/folly">Folly</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Facebook open-source library. A crossplatform library of C++14 components designed with practicality and efficiency in mind. (<a rel="nofollow" class="external text" href="https://github.com/facebook/folly/blob/main/folly/docs">Doc</a>)
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/facebook/folly/blob/main/LICENSE">Apache-2.0</a>
</td>
<td>  CMake, vcpkg
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/Microsoft/GSL">GSL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++ Core <b>G</b>uidelines <b>S</b>upport <b>L</b>ibrary implementation, recommended by Bjarne Stroustrup, Herb Sutter and Co in <a rel="nofollow" class="external text" href="https://isocpp.github.io/CppCoreGuidelines">C++ Core Guidelines</a>
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/microsoft/GSL/blob/main/LICENSE">MIT</a>
</td>
<td>  CMake, vcpkg
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/martinmoene/gsl-lite">gsl-lite</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A single-file header-only version of ISO C++ Guideline Support Library (GSL) for C++98, C++11 and later
</td>
<td>  MIT
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://gul14.info/">GUL14</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  General Utility Library for C++14 from <a rel="nofollow" class="external text" href="https://www.desy.de/">DESY</a>: Often-used utility functions and types, including String utilities, Statistics and Numeric functions, Containers, Debugging means, etc. (<a rel="nofollow" class="external text" href="https://github.com/gul-cpp/gul14">Src</a>)
</td>
<td>  LGPL-2.1
</td>
<td>  Meson, vcpkg
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/ryder052/History">History</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Modern C++17 Undo/Redo Framework
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/ryder052/History/blob/master/LICENSE">Unlicense</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/ideafarm/ideafarm.home.1">IP-DOS (tm)</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  IdeaFarm (tm) Piggyback Distributed Operating System: A general purpose programming environment for the C++ language.
</td>
<td>  Proprietary Open Source
</td>
<td>  Open Watcom 2.0
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.juce.com/">JUCE</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  An extensive, mature, cross-platform C++ toolkit
</td>
<td>  GPL
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/gracicot/kangaru">Kangaru</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A dependency injection container for C++11 and C++14
</td>
<td>  MIT
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/WentsingNee/Kerbal">Kerbal</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Backports of modern STL facilities to previous standard. More features! More constexpr!
</td>
<td>  LGPL-3.0
</td>
<td>  header-only
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://sourcey.com/libsourcey/">libsourcey</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Cross-platform C++11 library for high speed networking and media encoding. HTTP, WebSockets, TURN, STUN, Symple and more...
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/LLNL/units">LLNL/units</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A run-time C++ library for working with units of measurement and conversions between them and with string representations of units and measurements
</td>
<td>  BSD 3-Clause "New" or "Revised"
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://loki-lib.sourceforge.net/">Loki</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  design patterns
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/martinmoene/nonstd-lite">nonstd-lite</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Parent of *-lite repositories, a migration path to post-C++11 features for pre-C++11 environments
</td>
<td>  Boost
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/nyorain/nytl">nytl</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Generic C++17 header-only utility template library.
</td>
<td>  Boost
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://onposix.sourceforge.net/">OnPosix</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++ library providing several abstractions (e.g., threading, networking, logging, IPC, etc.) on POSIX platforms.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.reasoning.biz/index.htm">Reason</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  xml, xpath, regex, threads, sockets, http, sql, date-time, streams, encoding and decoding, filesystem, compression
</td>
<td>  GPL
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/duneroadrunner/SaferCPlusPlus">SaferCPlusPlus</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Safe compatible substitutes for unsafe C++ primitives, including pointers, int and std::vector.
</td>
<td>  Boost
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/krabicezpapundeklu/smart_enum">Smart Enum</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  "to_string", "from_string" and more for your enums.
</td>
<td>  Boost
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/nholthaus/units">units</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A compile-time, header-only, dimensional analysis and unit conversion library built on c++14 with no dependencies
</td>
<td>  MIT
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/AmokHuginnsson/yaal">yaal</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  <b>Y</b>et <b>A</b>nother <b>A</b>bstraction <b>L</b>ayer - algorithms, collections, arbitrary precision calculation, generic-DSL grammar driven parsers and more
</td>
<td>  CC BY-ND-NC 4.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/agruzdev/Yato">Yato</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Modern C++(14/17) cross-platform STL-styled and STL-compatible library with implementing containers, ranges, iterators, type traits and other tools; actors system; type-safe config interface.
</td>
<td>  Apache-2.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/jll63/yomm2">yomm2</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Open multi-methods for C++17
</td>
<td>  Boost
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="GPS">GPS</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://gpsd.gitlab.io/gpsd/">gpsd</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  <b>gpsd</b> is an open-source, cross-platform (Linux/Unix/BSD flavors, including Android and OS X) GPS-aware set of tools, such as a translator and replicator daemon for GPS devices, AIS radios, and other navigational sensors. <b>gpsd</b> is mostly written in C and Python, but also has C++ wrapper. <b>gpsd</b> is everywhere in mobile embedded systems. Every location-aware Android app is indirectly a <b>gpsd</b> client. (<a rel="nofollow" class="external text" href="https://gpsd.io/#documentation">Doc</a>) (<a rel="nofollow" class="external text" href="http://download.savannah.gnu.org/releases/gpsd/">Src</a>)
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.openhub.net/licenses/bsd_2clause_ish">BSD 2-clause</a>
</td>
<td>  scons
</td></tr>
</table>
<h2><span class="mw-headline" id="Graphic_user_interface">Graphic user interface</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/ocornut/imgui">Dear ImGui</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A bloat-free graphical user interface library that is highly optimized.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.fltk.org/">FLTK</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A cross-platform C++ GUI toolkit (Linux, Windows, MacOS) that provides modern GUI functionality, and supports 3D graphics via OpenGL/GLUT. Designed to be small and modular. Includes an UI builder.
</td>
<td>  LGPL ver.2
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://nanapro.org/">nana</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  GUI programming in modern C++ style <a rel="nofollow" class="external text" href="http://qpcr4vir.github.io/nana-doxy/html/">(Doc)</a>
</td>
<td>  Boost
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/wjakob/nanogui">nanogui</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Minimalistic cross-platform widget library for OpenGL 3.x or higher <a rel="nofollow" class="external text" href="https://nanogui.readthedocs.io/en/latest/">(Doc)</a>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://sourceforge.net/projects/owlnext/">OWLNext</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Modern update to <a rel="nofollow" class="external text" href="http://en.wikipedia.org/wiki/Object_Windows_Library">OWL</a> for writing GUI applications in standard C++ on Windows
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://tinyfiledialogs.sourceforge.net">tiny file dialogs</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  a single C C++ cross-platform file (no init, no main loop, 6 modal function calls)
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.ultimatepp.org">U++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Cross-platform (Windows, GNU/Linux, macOS) rapid application development framework with bundled IDE. C++17 Compatible. <a rel="nofollow" class="external text" href="https://www.ultimatepp.org/www%24uppweb%24documentation%24en-us.html">(Doc)</a> <a rel="nofollow" class="external text" href="https://github.com/ultimatepp/ultimatepp">(Src)</a>
</td>
<td>  BSD-3-Clause
</td>
<td>  Makefile
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://wxwidgets.org/">WxWidgets</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A free and open source cross-platform (Windows, GNU/Linux, macOS) C++ framework for writing advanced GUI applications using native controls. <a rel="nofollow" class="external text" href="http://docs.wxwidgets.org">(Doc)</a>
</td>
<td>  Modified LGPL
</td>
<td>  CMake, Makefile
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/gammasoft71/xtd">xtd</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Modern C++17/20 framework to create console, GUI and unit tests applications on Windows, macOS, Linux, iOS and android. <a rel="nofollow" class="external text" href="https://gammasoft71.wixsite.com/xtdpro">(Website)</a> <a rel="nofollow" class="external text" href="https://codedocs.xyz/gammasoft71/xtd/index.html">(Doc)</a>
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
</table>
<p><span id="Graphic_user_interface:CopperSpice"></span>
</p>
<dl><dt> CopperSpice
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.copperspice.com/">CopperSpice</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A set of C++ libraries used to develop cross-platform software applications. It uses modern idiomatic C++ and integrates seamlessly with the STL. CopperSpice was derived from the Qt framework. <a rel="nofollow" class="external text" href="https://www.copperspice.com/documentation-copperspice.html">(Doc)</a> <a rel="nofollow" class="external text" href="https://github.com/copperspice/copperspice">(Src)</a>
</td>
<td>  LGPL-2.1
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/copperspice/cs_signal">CsSignal</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Standalone C++ thread aware signal/slot library
</td>
<td>  LGPL-2.1
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/copperspice/cs_string">CsString</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Standalone C++ unicode aware string library
</td>
<td>  LGPL-2.1
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/copperspice/libguarded">libGuarded</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Standalone C++ multithreading library for managing access to shared data
</td>
<td>  LGPL-2.1
</td>
<td>  CMake
</td></tr>
</table>
<p><span id="Graphic_user_interface:GTK.2B"></span>
</p>
<dl><dt> GTK+
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.gnome.org/projects/evince/">evince</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://drobilla.net/software/flowcanvas/">flowcanvas</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.gtkmm.org/">glibmm</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://live.gnome.org/GooCanvas">goocanvasmm</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://gtkmm.org">gtkmm</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A cross-platform C++ interface for the <a rel="nofollow" class="external text" href="http://www.gtk.org/">GTK+</a> GUI library.
</td>
<td>  <a rel="nofollow" class="external text" href="https://gtkmm.org/en/license.shtml">LGPL</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.gtkmm.org/">libglademm</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.gtkmm.org/">libgnomecanvasmm</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://webkitgtk.org/">webkitgtk</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
</table>
<p><span id="Graphic_user_interface:Qt"></span>
</p>
<dl><dt> Qt
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://launchpad.net/libdbusmenu-qt">libdbusmenu-qt</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A small library designed to make sharing and displaying of menu structures over DBus simple and easy to use. It works for both QT and GTK+ and makes building menus simple.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://qt.io/">Qt</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  <a rel="nofollow" class="external text" href="http://doc.qt.io/">(Doc)</a> <a rel="nofollow" class="external text" href="http://qt.io/download">(Src)</a>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/cneben/QuickQanava">QuickQanava</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++14 network/graph visualization library / Qt node editor.
</td>
<td>  BSD 2.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://qwt.sourceforge.net">qwt5</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Qt Widgets for Technical Applications
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://qwtplot3d.sourceforge.net">qwtplot3d</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
</table>
<p><span id="Graphic_user_interface:U.2B.2B"></span>
</p>
<dl><dt> U++
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.ultimatepp.org/">U++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  U++ is a C++ cross-platform rapid application development framework focused on programmers productivity. It includes a set of libraries (GUI, SQL, etc.), and an integrated development environment. <a rel="nofollow" class="external text" href="https://www.ultimatepp.org/www%24uppweb%24download%24en-us.html">(Src/Bin) </a>
</td>
<td>  BSD
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/ismail-yilmaz/upp-components">upp-components</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A collection of 3rd party packages for U++ like TerminalCtrl, MessageCtrl etc..
</td>
<td>  BSD-3-Clause
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Graphics">Graphics</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/bkaradzic/bgfx">bgfx</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Powerful cross-platform graphics rendering library, support platforms include Windows Mac Linux iOS Android Web, rendering backend including DX, opengl, metal webgl and so on.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://cairographics.org/cairomm/">cairomm</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A C++ wrapper for the <a rel="nofollow" class="external text" href="https://www.cairographics.org/">cairo graphics library</a> that is 2D library with support for multiple output devices: X Window, Quartz, Win32, image buffers, PostScript, PDF, SVG, OpenGL (experimental).
</td>
<td>  <a rel="nofollow" class="external text" href="http://www.gnu.org/licenses/lgpl.html">LGPL</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://dawoodoz.com/dfpsr.html">dfpsr</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  2D, 3D and isometric software renderer with desktop GUI toolkit, minimalistic dependency, designed for long time maintenance and can run without any 3D accelerated drivers
</td>
<td>  zlib
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://gegl.org/">gegl</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  <b>GEGL</b> (Generic Graphics Library) is a data flow based image processing framework, providing floating point processing and non-destructive image processing capabilities. <a rel="nofollow" class="external text" href="https://gitlab.gnome.org/GNOME/gegl/">(Src)</a>
</td>
<td>  LGPL
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/cpp-io2d/P0267_RefImpl">io2d</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Reference Implementations of <a rel="nofollow" class="external text" href="https://github.com/cpp-io2d/io2dts">P0267</a>, the proposed <a rel="nofollow" class="external text" href="http://wg21.link/p0267">2D graphics API for ISO C++</a>
</td>
<td>  Boost
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/memononen/nanovg">nanovg</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  2D drawing library based on openGL/DX/metal.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://launchpad.net/nux">nux</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  An OpenGL toolkit
</td>
<td>  LGPL v3
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://gitlab.gnome.org/GNOME/pangomm">pangomm</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  is the official C++ interface for the <a rel="nofollow" class="external text" href="http://www.pango.org/">Pango</a> font layout library. <a rel="nofollow" class="external text" href="https://gitlab.gnome.org/GNOME/pango">(Src)</a>
</td>
<td>  <a rel="nofollow" class="external text" href="https://gitlab.gnome.org/GNOME/pangomm/-/blob/master/COPYING">LGPL v2.1</a>
</td>
<td>  Makefile
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://skia.org/">Skia</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  is an open-source 2D-graphics library written in C++. <a href="https://en.wikipedia.org/wiki/Skia_Graphics_Engine" class="extiw" title="enwiki:Skia Graphics Engine">Skia</a> is used in Google Chrome, Chrome OS, Mozilla Firefox, Android, LibreOffice, Flutter, etc. <b>Skia</b> has several back-ends: software rasterization, (PDF) output, OpenGL, SVG, etc.
</td>
<td>  <a href="https://en.wikipedia.org/wiki/New_BSD_License" class="extiw" title="enwiki:New BSD License">New BSD</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/ded32/TXLib">TXLib</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  TX Library is a tiny 2D graphics library for Win32 written in C++.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/Praxinos/ULIS">ULIS</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Cross-Platform C++14 Library, Generic digital image processing, 2D Software rasterizer, Unlimited image formats (u8, u16, u32, float, double), Custom bit-ordered memory layout, All Photoshop pixel blending modes + 11 additional modes, Color models (RGB, HSL, HSV, CMYK, ...), Color-managed pipelines, Color Space support (icm profiles and device-independant), Optimized algorithms with multithreading, Optimized algorithms with SIMD Extensions (SSE2), Image pools and caches for optimisations, Memory storage of animated image sequences
</td>
<td>  Custom (free-of-charge for non-commercial purposes only)
</td>
<td>  CMake
</td></tr>
</table>
<h2><span class="mw-headline" id="Graphics_.283D.29">Graphics (3D)</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://assimp.sourceforge.net/">assimp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  3D model loading
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/bkaradzic/bgfx#bgfx---cross-platform-rendering-library">bgfx</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/DiligentGraphics/DiligentEngine">Diligent Engine</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A modern cross-platform low-level 3D graphics library.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/anholt/libepoxy">Epoxy</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Modern successor to GLEW. Abstracts difference between some kinds of GL contexts, which makes it sometimes simpler to use than GLEW. Used by GTK+ project since 2015.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://casual-effects.com/g3d/www/index.html#features">G3D</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The G3D Innovation Engine is a fully featured, open source, cross platform (Windows, Linus, Mac OS) 3D game engine written in C/C++. G3D is used in commercial games, research papers, simulators, and university courses. It supports real-time and offline hardware rendering, ray tracing, model loading, linear algebra, and GP-computation on GPUs. Supports 3DS, OBJ, MP4, PNG, JPG, MD3 and many other formats, includes a native OpenGL skinnable GUI. <a rel="nofollow" class="external text" href="https://sourceforge.net/projects/g3d/">(Src)</a> <a rel="nofollow" class="external text" href="https://casual-effects.com/g3d/www/index.html#documentation">(Doc)</a>
</td>
<td>  BSD-2
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://glad.dav1d.de/">GLAD</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Customizable, lightweight library for loading OpenGL functions
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://glew.sourceforge.net/">GLEW</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  OpenGL function loading
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.glfw.org/">GLFW</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  OpenGL window manager
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://glm.g-truc.net/">GLM</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Header only C++ mathematics library for rendering
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/redorav/hlslpp">hlsl++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Header only C++ math library for rendering using hlsl syntax. Supports SSE and NEON
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.horde3d.org/">Horde3D</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://irrlicht.sourceforge.net/">Irrlicht</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/jeremyong/klein">klein</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++11/14/17 SSE-optimized Projective Geometric Algebra library for graphics and animation
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://magnum.graphics">Magnum</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Lightweight and modular C++11/C++14 graphics middleware for games and data visualization
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/o3de/o3de">O3DE</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  <b>O</b>pen-source <b>3D</b> <b>E</b>ngine (former Amazon's Lumberyard) is a C++ multi-platform 3D engine to build AAA games, cinema-quality 3D worlds, and high-fidelity simulations. Includes physics simulation, script engine, networking, and <a rel="nofollow" class="external text" href="https://o3de.org/docs/welcome-guide/features-intro/">more</a>. <a rel="nofollow" class="external text" href="https://o3de.org">(Doc)</a>
</td>
<td>  Apache 2.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.ogre3d.org/docs/manual/">Ogre3D</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.opencascade.com/content/core-technology">Open CASCADE</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  SDK for 3D CAD/CAM/CAE applications
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.opengl.org/">OpenGL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.openscenegraph.org/">OpenSceneGraph</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/szellmann/visionaray">Visionaray</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A C++ ray tracing template library
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://vtk.org/">VTK</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.khronos.org/vulkan/">Vulkan</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Images">Images</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://boost.org/libs/gil">Adobe/boost GIL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  high-level generic library, focused on algorithms that operate on 2D images. Very limited I/O options.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/tyoma/agge">agge</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Anti-Grain Evolution. 2D graphics engine for Speed and Quality in C++
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://freeimage.sourceforge.io">FreeImage</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  An Open-Source library project for developers who would like to support popular graphics image formats like PNG, BMP, JPEG, TIFF and others
</td>
<td>  GPLv2, GPLv3, FIPL
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.graphicsmagick.org/">GraphicsMagick</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Reading, writing, and manipulating images in over 88 major formats. Forked from ImageMagick in 2002
</td>
<td>  <a rel="nofollow" class="external text" href="http://www.graphicsmagick.org/Copyright.html">Copyright</a>
</td>
<td>  Mercurial
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://sail.software">SAIL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Reading and writing static, animated, multi-paged images along with their meta data and ICC profiles. Converting capabilities. Targets simplicity and speed.
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/nothings/stb">stb</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The header-only libraries for C/C++, mostly game-dev oriented. The noteworthy caps: image loader/writer/resizer; font text rasterizer; type-safe containers; ogg vorbis decoder; real-time DXT compressor; Perlin noise generator; lexer for pet DSLs; fast sprintf.
</td>
<td>  MIT
</td>
<td>  header-only
</td></tr>
</table>
<p><span id="Images:Formats"></span>
</p>
<dl><dt> Formats
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://djvu.sourceforge.net/">djvulibre</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.imagemagick.org/">imagemagick</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/kaitai-io/kaitai_struct_cpp_stl_runtime/blob/master/kaitai/kaitaistream.cpp">Kaitai Struct C++ runtime</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.libraw.org/">libraw</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.openexr.com">openexr</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://poppler.freedesktop.org/">poppler</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.kde.org/">qimageblitz</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://svgpp.org/">SVG++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
</table>
<p><span id="Images:Plotting"></span>
</p>
<dl><dt> Plotting
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/alandefreitas/matplotplusplus">Matplot++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A <b>gnuplot</b> based C++ Graphics Library for Data Visualization. <b>Matplot++</b> can take advantage of the following libs: OpenCV, OpenGL, LAPACK, BLAS, FFTW, JPEG, TIFF, ZLIB, PNG, GLAD, GLFW3. <a rel="nofollow" class="external text" href="https://github.com/alandefreitas/matplotplusplus/blob/master/docs/README.md">(Doc)</a>
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.gnu.org/software/plotutils/">plotutils</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The GNU <b>plotutils</b> package contains <b>libplot</b>, a C/C++ library for exporting 2-D vector graphics in many file formats, both vector and bitmap. <b>libplot</b> can animate 2-D vector graphics and uses a Postscript-like API for file export and graphics animations.
</td>
<td>  GPL
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/sciplot/sciplot">sciplot</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A modern header-only C++ scientific plotting library powered by <a rel="nofollow" class="external text" href="http://www.gnuplot.info/">gnuplot</a>, with the export to pdf, svg, png, eps, etc.
</td>
<td>  MIT
</td>
<td>  CMake, vcpkg
</td></tr>
</table>
<h2><span class="mw-headline" id="Image_Processing">Image Processing</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://dlib.net/imaging.html">dlib</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/halide/Halide">Halide</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A C++-embedded DSL for high-performance processing of images and tensors.
</td>
<td>  MIT
</td>
<td>  CMake, vcpkg
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://itk.org/">ITK</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://opencv.org/">opencv</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.orfeo-toolbox.org/">OTB</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Internationalization">Internationalization</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.gnu.org/software/gettext/">gettext</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://site.icu-project.org/">IBM ICU</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/cbeck88/spirit-po">spirit-po</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A small, header-only library which parses po-files and provides an interface similar to GNU libintl. Based on boost::spirit.
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Logging">Logging</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/bombela/backward-cpp">Backward</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Printing nice Python-styled stack traces with colors and source snippets, especially on crashes. Header-only.
</td>
<td>  MIT
</td>
<td>  CMake, Conan
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/log/doc/html/index.html">Boost.Log</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A cross-platform logging library that is simple to use, extensible, and performant.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/nojhan/clutchlog">clutchlog</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Single-header logging system which targets versatile DEBUGGING instead of service event storage.
</td>
<td>  BSD
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/google/glog">glog</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Google Logging Library for C++98 based on C++-style streams
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/google/glog/blob/master/COPYING">License</a>
</td>
<td>  Bazel, CMake, vcpkg
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/log4cplus/log4cplus">Log4cplus</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Cross-platform, C++17 Logging API (modeled after the Java log4j API) providing thread-safe, flexible, and arbitrarily granular control over log management and configuration.
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/log4cplus/log4cplus/blob/master/LICENSE">BSD (two clause) or Apache 2.0</a>
</td>
<td>  Autotools, CMake, Visual Studio
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://log4cpp.sourceforge.net/">Log4cpp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A library of C++ classes for flexible logging to files, syslog, IDSA and other destinations.
</td>
<td>  LGPL
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://logging.apache.org/log4cxx/latest_stable/index.html">log4cxx</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Apache log4cxx is a logging framework for C++ patterned after Apache log4j. (<a rel="nofollow" class="external text" href="https://github.com/apache/logging-log4cxx">Src</a>)
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.apache.org/licenses">Apache</a>
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.pantheios.org/">Pantheios</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Diagnostic Logging API library, offering a combination of type-safety, efficiency, genericity and extensibility
</td>
<td>  BSD-style
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/SergiusTheBest/plog">plog</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Portable and simple log for C++ in less than 1000 lines of code
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/SergiusTheBest/plog/blob/master/LICENSE">MPL-2.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/odygrd/quill">Quill</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Cross-platform, C++14 Asynchronous <a rel="nofollow" class="external text" href="https://github.com/odygrd/quill#Performance">Low Latency</a> Logging Library
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/gabime/spdlog">spdlog</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Super fast, header only, C++ logging library
</td>
<td>  MIT
</td>
<td>  CMake, Conan
</td></tr>
</table>
<h2><span class="mw-headline" id="Error_handling">Error handling</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/leaf/doc/html/index.html">Boost.LEAF</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Lightweight error-handling library for C++11: single-header format, no dependencies, no dynamic memory allocations, can be used with or without exception handling, multi-threading ready.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Math">Math</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.alglib.net/">alglib</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  ALGLIB is a cross-platform (Windows/POSIX/Linux) numerical analysis and data processing library. ALGLIB features include: Data analysis, Optimization and nonlinear solvers, Interpolation, Linear algebra and linear solvers, FFT and many others.
</td>
<td>  Free (GPL/Personal/Academic) and Commercial
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.arrayfire.com/docs/index.htm">ArrayFire</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  is a cross-platform (Windows/OSX/Linux) general purpose HPC (CPU/GPU/OpenCL/CUDA/GPGPU) library for parallel computing. ArrayFire domains are: Vector Algorithms, Image Processing, Computer Vision, Signal Processing, Linear Algebra, Statistics, and more. <a rel="nofollow" class="external text" href="https://github.com/arrayfire/arrayfire">(Src)</a>
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/arrayfire/arrayfire/blob/master/LICENSE">Custom</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/limeoats/BigNumber">BigNumber</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++ class for creating and computing arbitrary-length integers
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/math/doc/html/math_toolkit/main_intro.html">Boost.Math</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  includes several contributions in the domain of mathematics: Floating Point Utilities, Mathematical Constants, Statistical Distributions and Functions, Statistics, Vector Functionals - Norms, Special Functions, Root Finding &amp; Minimization Algorithms, Polynomials and Rational Functions, Interpolation, Quadrature and Differentiation, Filters, Complex Number Functions, Quaternions, Octonions, Integer Utilities (Greatest Common Divisor and Least Common Multiple), Series, Rationals and Continued Fractions.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/multiprecision/doc/html/index.html">Boost.Multiprecision</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The Multiprecision Library provides integer, rational, floating-point, and complex types in C++ that have more <b>range and precision</b> than C++'s ordinary fundamental (built-in) types.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/doc/html/boost_random.html">Boost.Random</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  provides a variety of generators and distributions to produce random numbers having useful properties, such as uniform distribution.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/safe_numerics/doc/html/index.html">Boost.SafeNumerics</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++14, header only, Guaranteed Correct Integer Arithmetic, a drop-in replacement for the built-in integer types.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/hosseinmoein/Matrix">C++ Matrix</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  High performance and accurate (e.g. edge cases) matrix math library with expression template arithmetic operators
</td>
<td>  BSD-3-Clause
</td>
<td>  CMake, Makefile
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://web.casadi.org/">CasADi</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Symbolic framework for nonlinear optimization and algorithmic differentiation. Supports C++ code generation for symbolic expressions and dynamic connection of compiled generated code.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/carlomilanesi/cpp-measures/">cpp-measures</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A header-only C++11 library to handle physical measures
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://gs.jku.at/gismo">G+Smo</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  cross-platform library for isogeometric analysis
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://gmplib.org/manual/C_002b_002b-Class-Interface.html#C_002b_002b-Class-Interface">GNU MP bignum C++ interface</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++ convenience class interface that offers overloaded functions and operators. The <a rel="nofollow" class="external text" href="https://gmplib.org/">GMP</a> is a free C library for arbitrary precision arithmetic, operating on signed integers, rational and floating-point numbers.
</td>
<td>  GNU LGPL v3 and GNU GPL v2
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.bytereef.org/mpdecimal/index.html">libmpdec++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Cross-platform library for correctly-rounded arbitrary precision decimal floating point arithmetic.
</td>
<td>  BSD-2-Clause
</td>
<td>  Autoconf, Visual Studio build scripts
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.pcg-random.org/">PCGrand</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  PCG is a family of simple fast space-efficient statistically good algorithms for random number generation. Unlike many general-purpose RNGs, they are also hard to predict.
</td>
<td>  Apache
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.shoup.net/ntl/">NTL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A Library for doing Number Theory. NTL is a high-performance, portable C++ library providing data structures and algorithms for manipulating signed, arbitrary length integers, and for vectors, matrices, and polynomials over the integers and over finite fields.
</td>
<td>  LGPLv2.1+
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/st-gille/semt">SEMT</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Compile time symbolic differentiation
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://statsxx.com/">stats++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Advanced, comprehensive statistical software: data collection and preprocessing, statistics, machine learning, and optimization, with open C++ source code.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/kthohr/stats">StatsLib</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A templated, header-only library of statistical distribution functions.
</td>
<td>
</td>
<td>
</td></tr>
</table>
<p><span id="Math:Automata_theory"></span>
</p>
<dl><dt> Automata theory
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>

<tr>
<th> <a rel="nofollow" class="external text" href="https://yasmine.seadex.de/yasmine.html">yasmine</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++11 UML state machine framework <a rel="nofollow" class="external text" href="https://yasmine.seadex.de/libyasmine_%28documentation%29.html">(Doc)</a> <a rel="nofollow" class="external text" href="https://yasmine.seadex.de/Downloads.html">(Src)</a>
</td>
<td>  <a rel="nofollow" class="external text" href="https://yasmine.seadex.de/License.html">License</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://gitlab.com/nin-os/uml_statemachine/">UML_StateMachine</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  UML State Machine is a pure C++20 library for defining state charts statically and executing them. <a rel="nofollow" class="external text" href="https://gitlab.com/nin-os/uml_statemachine/-/raw/master/doc/User%20manual.pdf">(Doc)</a>
</td>
<td>  GPLv3
</td>
<td>  CMake
</td></tr>
</table>
<p><span id="Math:Class_Library_for_Numbers"></span>
</p>
<dl><dt> Class Library for Numbers
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.ginac.de/CLN/">cln</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://johnmcfarlane.github.io/cnl/">CNL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Compositional Numeric Library - fixed-precision numeric types
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>  CMake, Conan
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/stillwater-sc/universal">Universal Numbers</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A C++17/20 template library providing plug-in replacements for the native arithmetic types (integer/decimal/fixed-point/floating-point/posits/logarithmic/interval)
</td>
<td>  MIT
</td>
<td>  CMake, Vcpkg, Conan
</td></tr>
</table>
<p><span id="Math:Computational_geometry"></span>
</p>
<dl><dt> Computational geometry
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.cgal.org/">CGAL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Computational geometry algorithms library
</td>
<td>  GPL-3.0 or commercial
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://pointclouds.org/">PCL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Point Cloud library
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.pmp-library.org/">pmp-library</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Polygon Mesh Processing Library
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.wykobi.com">Wykobi</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Computational geometry library
</td>
<td>
</td>
<td>
</td></tr>
</table>
<p><span id="Math:Graph_theory"></span>
</p>
<dl><dt> Graph theory
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/graph/doc/index.html">Boost.Graph</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/ZigRazor/CXXGraph">CXXGraph</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A C++17 Header-Only Library for Graph Representation, Manipulation, Partitioning and Algorithms
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/ZigRazor/CXXGraph/blob/master/LICENSE">AGPL-3.0</a>
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/cneben/QuickQanava/tree/master/GTpo">GTpo</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A C++14 directed graphs modelling library, part of <a rel="nofollow" class="external text" href="https://github.com/cneben/QuickQanava">QuickQanava project</a>
</td>
<td>  BSD
</td>
<td>  QMake, CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://lemon.cs.elte.hu/trac/lemon">LEMON</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  <b>L</b>ibrary for <b>E</b>fficient <b>M</b>odeling and <b>O</b>ptimization in <b>N</b>etworks implements common data structures and algorithms focusing on combinatorial optimization, graphs and networks. <a rel="nofollow" class="external text" href="http://lemon.cs.elte.hu/trac/lemon/wiki/Documentation">(Doc)</a>
</td>
<td>  <a rel="nofollow" class="external text" href="http://lemon.cs.elte.hu/trac/lemon/wiki/License">License</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://math.nist.gov/~RPozo/ngraph/ngraph_index.html">NGraph</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A simple (Network) Graph library in C++
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://ogdf.uos.de/">OGDF</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Open Graph algorithms and Data structures Framework - is a C++ library for graph algorithms, in particular for automatic graph drawing.
</td>
<td>  GPL v2 or v3
</td>
<td>
</td></tr>
</table>
<p><span id="Math:Linear_algebra"></span>
</p>
<dl><dt> Linear algebra
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://arma.sourceforge.net/">Armadillo</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://bitbucket.org/blaze-lib/blaze">Blaze</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://sourceforge.net/projects/blitz/">Blitz++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/numeric/ublas/doc/index.htm">Boost.uBLAS</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/jmatta1/DecompLib">DecompLib</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A header-only C++11 library to decompose a vector into a set of positive definite weighted basis vectors.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://dlib.net/linear_algebra.html">Dlib - linear algebra tools</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://eigen.tuxfamily.org/index.php?title=Main_Page#Documentation">Eigen</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms.
</td>
<td>  MPL2
</td>
<td>  CMake, Conan
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/wichtounet/etl">ETL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://sourceforge.net/projects/itpp/">IT++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/mlcpp/Matrix">Matrix</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Easy-to-use Scientific Computing library in/for C++ available for Linux and Windows.
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.mcs.anl.gov/petsc/">PETSc</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A suite of data structures and routines for the parallel solution of scientific applications modeled by partial differential equations. It supports MPI, and GPUs through CUDA or OpenCL, as well as hybrid MPI-GPU.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://spectralib.org/">Spectra</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  <b>Sp</b>arse <b>E</b>igenvalue <b>C</b>omputation <b>T</b>oolkit as a <b>R</b>edesigned <b>A</b>RPACK is an open-source header-only C++ library for large scale eigenvalue problems, built on top of <a rel="nofollow" class="external text" href="https://eigen.tuxfamily.org">Eigen</a> linear algebra library (also open-source and header-only). <a rel="nofollow" class="external text" href="https://github.com/yixuan/spectra/">(Src)</a>
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/yixuan/spectra/blob/master/LICENSE">MPL-2.0</a>
</td>
<td>  CMake, vcpkg
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://xtensor.readthedocs.io/en/latest/">xtensor</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A C++ library meant for numerical analysis with multi-dimensional array expressions.
</td>
<td>  BSD
</td>
<td>
</td></tr>
</table>
<p><span id="Math:Machine_Learning"></span>
</p>
<dl><dt> Machine Learning
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://dlib.net/ml.html">Dlib</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  machine learning tools
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://leenissen.dk/fann/wp/">FANN</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Fast Artificial Neural Network Library
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/greenfish77/gaenari">gaenari</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++17 based incremental decision tree
</td>
<td>  Apache-2.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.csie.ntu.edu.tw/~cjlin/liblinear/">liblinear</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://pytorch.org/">libtorch</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++ frontend to the popular PyTorch Python library (backend is written in C++)
</td>
<td>  BSD-style
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://mlpack.org">MLPACK</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  machine learning package
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://shogun-toolbox.org">Shogun</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  large scale machine learning toolbox
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://statsxx.com/">stats++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/tensorflow/tensorflow">tensorflow</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  An Open Source Machine Learning Framework for Everyone; provides stable <a rel="nofollow" class="external text" href="https://www.tensorflow.org/api_docs/cc">C++ API</a> and written mainly in C++
</td>
<td>  Apache-2.0
</td>
<td>
</td></tr>
</table>
<p><span id="Math:Numeral_Calculations"></span>
</p>
<dl><dt> Numeral Calculations
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://bellard.org/libbf">LibBF</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  An arbitrary precision numerical calculation library developed by Bellard with a sample program that calculates pi to billions of bits
</td>
<td>
</td>
<td>
</td></tr>
</table>
<p><span id="Math:Optimization"></span>
</p>
<dl><dt> Optimization
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/ceres-solver/ceres-solver">ceres-solver</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Open-source C++ library for modeling and solving large, complicated optimization problems. It is a feature rich, mature and performant library which has been used in production at Google since 2010.
</td>
<td>  Apache
</td>
<td>  CMake, Conan
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/kthohr/optim">OptimLib</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A C++11 library of numerical optimization methods for nonlinear functions.
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Metaprogramming">Metaprogramming</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/callable_traits/doc/html/index.html">Boost.CallableTraits</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/hana/doc/html/index.html">Boost.Hana</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  New metaprogramming library for both types and values
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/doc/html/metaparse.html">Boost.Metaparse</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Compile-time parser library, producing types, values, and metafunctions from compile-time strings
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/mp11/doc/html/mp11.html">Boost.Mp11</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/mpl/doc/index.html">Boost.MPL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Original metaprogramming library, targeted at C++03, slow
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/doc/html/boost_pfr.html">Boost.PFR</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A header only C++14 library for basic reflection (without macros): visiting members of a user defined type by index, IO streaming.
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/doc/html/proto.html">Boost.Proto</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A library for building expression template-backed EDSLs
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/edouarda/brigand">Brigand</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Uses eager metafunctions, optimized for best performance
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/kfrlib/cometa">CoMeta</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Lightweight, header-only C++14 metaprogramming library
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/ericniebler/meta">Meta</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Uses eager metafunctions, middle ground between metal and brigand wrt performance
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/brunocodutra/metal">Metal</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Uses eager metafunctions, 100% SFINAE-friendly
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/veselink1/refl-cpp">refl-cpp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A modern compile-time reflection library for C++ with support for overloads, templates, attributes and proxies
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/jsoysouvanh/Refureku">Refureku</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++17 runtime reflection and code generation library
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/garbageslam/visit_struct">visit_struct</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A miniature reflection library, providing structure visitors for C++11/14. Self-contained, 200-400 lines of code depending how you count.
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="PDF">PDF</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://libharu.org/">HARU</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.jagpdf.org/">JagPDF</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://podofo.sourceforge.net/">PoDoFo</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Physics_and_Simulations">Physics and Simulations</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://pybullet.org/wordpress">Bullet</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Physics simulation for games, visual effects, robotics and reinforcement learning
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/GMLC-TDC/HELICS">HELICS</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Co-simulation framework for synchronizing time and exchanging data between different types of simulators
</td>
<td>  BSD 3-Clause "New" or "Revised"
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://projectchrono.org">ProjectCHRONO</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  An Open Source Multi-physics Simulation Engine
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.reactphysics3d.com">ReactPhysics3D</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++ physics engine library for 3D simulations and game
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Serialization">Serialization</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/doc/libs/release/libs/serialization/">Boost.Serialization</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://cppxmlobj.sourceforge.net">C++ XML objects</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://uscilab.github.io/cereal/">cereal</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++11 serialization
</td>
<td>  BSD
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/tplgy/cppcodec">cppcodec</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Header-only C++11 library to encode/decode base64, base32 and hex with consistent, flexible API
</td>
<td>  MIT
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/simulton/gpds">GPDS</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  General purpose data serializer to serialize objects to and from XML. Uses TinyXML under the hood.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://gsoap2.sourceforge.net">gSOAP</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  accurate XML serialization
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/qicosmos/iguana">iguana</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A modern, universal and easy-to-use serialization engine developed in C++17, based on compile-time Reflection. Supported formats: JSON, XML, user-defined.
</td>
<td>  Apache-2.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/castedo/jios">jios</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  JSON serialization
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.s11n.net">libs11n</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/google/protobuf/">protobuf</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/Exaeta/rpnx-serial">rpnx-serial</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A library that can (de)serialize types like std::map, std::vector, etc.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.sweetsoftware.co.nz/persist_overview.html">sweet_persist</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/Loki-Astari/ThorsSerializer">ThorsSerializer</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++ Serialization library for JSON
</td>
<td>  MIT
</td>
<td>  Makefile
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/jbeder/yaml-cpp">yaml-cpp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/niXman/yas">YAS</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  <b>Y</b>et <b>A</b>nother <b>S</b>erialization. YAS is C++11 library; no third-party libraries dependencies. Archives can be binary, text, JSON
</td>
<td>  Boost
</td>
<td>  Header only
</td></tr>
</table>
<p><span id="Serialization:Binary_serialization"></span>
</p>
<dl><dt> Binary serialization
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/liteserver/binn">binn</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A binary serialization library designed to be compact, fast, and easy to use, itself an implementation of the same name format.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/neobrain/blobify">blobify</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++17 header-only, infers the serialized layout from the structure definition alone.
</td>
<td>  Boost
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/dwight/bson-cxx">bson-cxx</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++ implementation in BSON format.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/Samuel-Tyler/fast_ber">fast_ber</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  High-performance serialization using BER/DER encoding rules. Encoding layout is defined by ASN.1 schemas. Follows modern C++ practices, written in C++11.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/WhiZTiM/UbjsonCpp">UBjsonCpp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  High-performance UBJson read-write library based on C++14
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Sorting">Sorting</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/Morwenn/cpp-sort">Cpp-sort</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A collection of various sorting algorithms in a simple package.
</td>
<td>  MIT
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://plflib.org/indiesort.htm">Indiesort</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Templated sort-wrapper function which allows use of std::sort (and other random-access sort methods) with non-random-access containers. It also increases the performance of sorting large types in random-access containers and arrays
</td>
<td>  zlib
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/gfx/cpp-TimSort">Timsort</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Templated stable sorting function which outperforms quicksort-based algorithms including std::sort, for reversed or semi-sorted data.
</td>
<td>  MIT
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="System">System</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/ThePhD/infoware">Infoware</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++ Library for pulling system and hardware information, without hitting the command line.
</td>
<td>  Creative Commons v1.0
</td>
<td>  CMake
</td></tr>
</table>
<h2><span class="mw-headline" id="Terminal">Terminal</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/daniele77/cli">cli</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A cross-platform header-only library for interactive command line interfaces in modern C++.
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/daniele77/cli/blob/master/LICENSE">BSL-1.0</a>
</td>
<td>  make, cmake, nmake, vcpkg
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://salsa.debian.org/cwidget-team">cwidget</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  high-level terminal interface library for C++, modeled on GTK+ and Qt, but using `curses` as its display layer
</td>
<td>  GPL v2.0
</td>
<td>  make
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/AmokHuginnsson/replxx">replxx</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A readline and libedit replacement that supports UTF-8, syntax highlighting &amp; hints.
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Testing">Testing</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://banditcpp.github.io/bandit/">bandit</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Human-friendly unit testing for C++11
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.boost.org/libs/test/">Boost.Test</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>  <a rel="nofollow" class="external text" href="https://www.boost.org/LICENSE_1_0.txt">BSL-1.0</a>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/catchorg/Catch2">Catch2</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://sourceforge.net/projects/cppunit/">cppunit</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/PeterSommerlad/CUTE">CUTE</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++ Unit Testing Easier (no reliance on static initialization for registration), integrated into <a rel="nofollow" class="external text" href="https://cevelop.com">Cevelop</a> for TDD
</td>
<td>  MIT
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/onqtam/doctest">doctest</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The lightest feature-rich C++ single-header testing framework for unit tests and TDD
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/mollismerx/elfspy">ELFspy</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Testing in isolation with fakes and spies - Linux only
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/google/googletest/">Google Test</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/martinmoene/lest">lest</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A modern, C++11-native, single-file header-only, tiny framework for unit-tests, TDD and BDD (includes C++98 variant).
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/etr/liblittletest">liblittletest</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Portable, one file header-only testing framework
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/gammasoft71/tunit">tunit</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Modern c++17 unit testing library on Windows, macOS, Linux, iOS and android. <a rel="nofollow" class="external text" href="https://gammasoft71.wixsite.com/tunit">Office site</a>
</td>
<td>  MIT
</td>
<td>  CMake
</td></tr>
</table>
<h4><span class="mw-headline" id="See_also">See also</span></h4>
<table class="t-dsc-begin">

<tr class="t-dsc">
<td colspan="2">  <a href="https://en.wikipedia.org/wiki/List_of_unit_testing_frameworks#C.2B.2B" class="extiw" title="enwiki:List of unit testing frameworks">List of C++ unit testing frameworks at Wikipedia</a>
</td></tr>

</table>
<h2><span class="mw-headline" id="Text">Text</span></h2>
<p><span id="Text:Coding"></span>
</p>
<dl><dt> Coding
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/Loara/StringSuite">strsuite</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A C++20 library to manage strings with different encodings
</td>
<td>  LGPL3.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/BYVoid/uchardet">uchardet</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The ability to guess string encoding is basically the same as the uchardet function in Python.
</td>
<td>  MOZILLA PUBLIC LICENSE v1.1
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/win-iconv/win-iconv">win-iconv</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The character set encoding conversion library for Linux and Mac. The Windows implementation of iconv is based on the Win32 Character Set Conversion API.
</td>
<td>  public domain
</td>
<td>  CMake
</td></tr>
</table>
<p><span id="Text:Diff.2FPatch"></span>
</p>
<dl><dt> Diff/Patch
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/google/diff-match-patch">diff_match_patch</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Create and apply patches for strings (requires Qt)
</td>
<td>  Apache 2.0
</td>
<td>  qmake
</td></tr>
</table>
<p><span id="Text:Format"></span>
</p>
<dl><dt> Format
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/fmtlib/fmt">fmt</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Open-source formatting library providing a fast and safe alternative to C stdio and C++ iostreams. Prototype for C++20 <span class="t-lc"><a href="../utility/format/format.html" title="cpp/utility/format/format">std::format</a></span> family.
</td>
<td>  <a rel="nofollow" class="external text" href="https://github.com/fmtlib/fmt/blob/master/LICENSE.rst">Victor Zverovich</a>
</td>
<td>  CMake, Conan
</td></tr>
</table>
<p><span id="Text:Parse"></span>
</p>
<dl><dt> Parse
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/r35382/bnflite">BNFlite</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A single file lightweight grammar parser library
</td>
<td>  MIT
</td>
<td>  Header only
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/taocpp/PEGTL">PEGTL</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Parsing Expression Grammar Template Library
</td>
<td>  MIT
</td>
<td>  Header only
</td></tr>
</table>
<p><span id="Text:Search"></span>
</p>
<dl><dt> Search
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://clucene.sourceforge.net">clucene</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  CLucene is a cross platform, full-featured, open-source indexing and searching engine/API. (<a rel="nofollow" class="external text" href="https://sourceforge.net/p/clucene/code/ci/master/tree/">Src</a>) (<a rel="nofollow" class="external text" href="http://clucene.sourceforge.net/doc/html/">Doc</a>)
</td>
<td>  LGPL v2.1
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/storm-ptr/step">Step</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Ukkonen's online algorithm for constructing <a href="https://en.wikipedia.org/wiki/Suffix_tree" class="extiw" title="enwiki:Suffix tree">suffix tree</a>, Manber's algorithm for constructing <a href="https://en.wikipedia.org/wiki/Suffix_array" class="extiw" title="enwiki:Suffix array">suffix array</a>.
</td>
<td>  MIT
</td>
<td>  Header only
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://xapian.org/">xapian</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Open-source search engine with indexing facilities (<a rel="nofollow" class="external text" href="https://xapian.org/download">Src</a>) (<a rel="nofollow" class="external text" href="https://xapian.org/docs/">Doc</a>)
</td>
<td>  GPL v2+
</td>
<td>  make
</td></tr>
</table>
<p><span id="Text:Template_Engine"></span>
</p>
<dl><dt> Template Engine
</dt></dl>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/pantor/inja">inja</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Header-only Template Engine for C++17.
</td>
<td>  MIT
</td>
<td>  CMake, Conan, vcpkg, etc.
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/jinja2cpp/Jinja2Cpp">Jinja2C++</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  C++14/17 implementation of Jinja2 templates
</td>
<td>  MPL-2.0
</td>
<td>  CMake, Conan
</td></tr>
</table>
<h2><span class="mw-headline" id="Version_Control">Version Control</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/easz/cpp-semver">coo-semver</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  The C++ operation library for semantic version numbers.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://libgit2.org/">LibGit2</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Version Control System Git's core library.
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Video">Video</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.broadcom.com/support/crystal_hd/">crystalhd</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://gstreamer.freedesktop.org/">gstreamermm</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.matroska.org/">libmatroska</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://wiki.videolan.org/LibVLC">libVLC</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://mjpeg.sourceforge.net/">mjpegtools</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
</table>
<h2><span class="mw-headline" id="Web">Web</span></h2>
<table class="wikitable" style="font-size:1em; line-height:1em; text-align:center;">

<tr>
<th rowspan="1" width="10%"> Library
</th>
<th rowspan="1" width="70%"> Description
</th>
<th rowspan="1" width="20%"> License
</th>
<th colspan="1"> Configuration
</th></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://bitbucket.org/chromiumembedded/cef/">Chromium Embedded</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/arun11299/cpp-jwt">cpp-jwt</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/an-tao/drogon">Drogon</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  A C++14/17 based HTTP web application framework running on Linux/macOS/Unix/Windows.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/etr/libhttpserver">libhttpserver</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.kde.org/">libkcddb</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://www.last.fm/">liblastfm</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://musicbrainz.org/doc/libmusicbrainz">libmusicbrainz5</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/titi38/libnavajo">libnavajo</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://oatpp.io/">oatpp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Light and powerful web-framework for IoT and high-performance web-services. Zero-dependency and easy-portable.
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://stefanfrings.de/qtwebapp/index-en.html">QtWebApp</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  HTTP(s) Server in C++ inspired by Java Servlets
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/vinipsmaker/tufao">Tufão</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>
</td>
<td>
</td>
<td>
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="https://github.com/TinkoffCreditSystems/uri-template">uri-template</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  URI Templates expansion and reverse-matching for C++
</td>
<td>  Apache 2.0
</td>
<td>  CMake
</td></tr>
<tr>
<th> <a rel="nofollow" class="external text" href="http://www.webtoolkit.eu/wt/">Wt</a><span style="color: #BBB; font-size: 0.7em;"></span>
</th>
<td>  Widgets and building blocks to build web apps, built-in security, PDF rendering, 2D and 3D painting, ORM, charting, authentication frameworks. <a rel="nofollow" class="external text" href="https://www.webtoolkit.eu/wt/doc/reference/html/index.html">(Doc)</a> <a rel="nofollow" class="external text" href="https://www.webtoolkit.eu/wt/download">(Src)</a>
</td>
<td>  GNU GPL or Commercial
</td>
<td>
</td></tr>
</table>
<h3><span class="mw-headline" id="See_also_2">See also</span></h3>
<table class="t-dsc-begin">

</table>

<!-- 
NewPP limit report
Preprocessor visited node count: 22279/1000000
Preprocessor generated node count: 28622/1000000
Post‐expand include size: 228569/2097152 bytes
Template argument size: 132659/2097152 bytes
Highest expansion depth: 10/40
Expensive parser function count: 0/100
-->

<!-- Saved in parser cache with key mwiki1-mwiki_en_:pcache:idhash:8399-0!*!0!!en!*!* and timestamp 20220730034710 -->
</div>                    <!-- /bodycontent -->
                                        <!-- printfooter -->
                    <div class="printfooter">
                    Retrieved from "<a href="https://en.cppreference.com/mwiki/index.php?title=cpp/links/libs&amp;oldid=141606">https://en.cppreference.com/mwiki/index.php?title=cpp/links/libs&amp;oldid=141606</a>"                    </div>
                    <!-- /printfooter -->
                                                            <!-- catlinks -->
                    <!-- /catlinks -->
                                                            <div class="visualClear"></div>
                    <!-- debughtml -->
                                        <!-- /debughtml -->
                </div>
                <!-- /bodyContent -->
            </div>
        </div>
        <!-- /content -->
        <!-- footer -->
        <div id="cpp-footer-base" class="noprint">
            <div id="footer">
                        <div id="cpp-navigation">
            <h5>Navigation</h5>
            <ul><li><a href="https://en.cppreference.com/w/cpp/links/libs">Online version</a></li><li>Offline version retrieved 2022-07-30 14:05.</li></ul></div>
                        <ul id="footer-info">
                                    <li id="footer-info-lastmod"> This page was last modified on 29 July 2022, at 20:47.</li>
                                    <li id="footer-info-viewcount">This page has been accessed 1,894,593 times.</li>
                            </ul>
                    </div>
        </div>
        <!-- /footer -->
        <script>if(window.mw){
mw.loader.state({"site":"loading","user":"missing","user.groups":"ready"});
}</script>
<script src="../../../common/skin_scripts.js"></script>
<script>if(window.mw){
mw.loader.load(["mediawiki.action.view.postEdit","mediawiki.user","mediawiki.page.ready","mediawiki.searchSuggest","mediawiki.hidpi","ext.gadget.ColiruCompiler","ext.gadget.MathJax"], null, true);
}</script>
<script src="../../../common/site_scripts.js"></script>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-2828341-1']);
_gaq.push(['_setDomainName', 'cppreference.com']);
_gaq.push(['_trackPageview']);
</script><!-- Served in 0.045 secs. -->
	</body>
<!-- Cached 20220730034754 -->
</html>